ショウジンブログ on Hatena

“お芝居をしないと、この社会では異邦人として扱われるほかない”

2014-01-01から1年間の記事一覧

全てのカテゴリを取得して一覧表示@WordPress

投稿用テンプレートのsingle.phpの下部にカテゴリ一覧を設置する例です。 'order', 'order' => 'ASC', 'exclude' => '1' // 「未設定」カテゴリを除外 ); $cat_all = get_categories($args); foreach($cat_all as $value): ?> <a href="<?php echo get_category_link($value); /* カテゴリへのリンク */ ?>">na…</a>

改行文字をbrに置換、そしてサニタイズする@WordPress

カスタムフィールドで用意したフィールドで、html要素はエスケープ(サニタイズして無害化)、改行は改行文字をbr要素に置換して出力したいという状況に遭ったのですが、nl2br(PHPの関数)とesc_html(WordPressの関数)の併用で簡単に出来ました。

カスタムフィールドの値が同じユーザをカウントする@WordPress

ユーザ情報にカスタムフィールドを追加し、カスタムフィールドで同じ値を持つユーザ数をカウントする例です。カスタムフィールドはACF(Advanced Custom Field)ではなく、日本語の解説記事はまだ多くないTypesを使っています。

下書きをプレビューする権限がありません。@WordPress

“下書きをプレビューする権限がありません。” WordPressの管理画面で投稿や固定ページ等を作成し、そのプレビューを実行しようとしたときにこのメッセージが表示されてプレビューできないことがありました。

管理画面に独自のjsやcssを読み込む@WordPress

WordPressに独自のjsやcssを読み込む場合、テーマのfunctions.phpに以下を記述します。例ではログインユーザが「購読者 = subscriber」の権限グループに属している場合に読み込まれます。例えば、購読者グループのユーザには隠したいメニューがあったり、デ…

デフォルトのカテゴリ説明文をカテゴリページに出力する@WordPress

WordPressのデフォルトのカテゴリーにはカテゴリーの名前、スラッグ、親子関係の他に「説明」というフィールドがあります。これを出力するのには場所(テンプレート)によって記述が変わってくるのですが、WordPressのデフォルトテンプレートのTwenty Fourte…

親カテゴリは出力せずに子カテゴリ名だけ出力する@WordPress

親カテゴリ名は表示せず、子カテゴリ名だけを出力する例です。テンプレートはcategory.phpです。親カテゴリ名は必要とせず、子カテゴリ名の「現場名」だけを表示させたいと。実際にあった依頼です。

デフォルトのカテゴリ説明文を固定ページに出力する@WordPress

WordPressのデフォルトのカテゴリに設定できる「説明」について、category.phpでの出力例は別の投稿に残しましたが、これはcategory.phpでないと使えません。本投稿は固定ページで使う場合です。

タイマー・時限設定@PHP

PHP

満たす要件は 奇数月(1,3,5,7,9,11月)の1〜14日の期間を判別して、その期間とそれ以外の期間で出力するhtmlソースを分けると。 汎用性でいうと「◯◯◯◯年◯◯月◯◯日の◯◯時〜◯◯◯◯年◯◯月◯◯日の◯◯時」とかがいいでしょうけど、これをちょっといじればそういうのも…

Masonryを使う際にわりと大事なimagesLoadedプラグイン@jQuery

jQuery Masonryを使っている場合、このメソッドの実行前に画像をすべて読み込んでおくようにしておいたほうがよかったりする。と思います。たぶん。 自分がやってみたものだと、これをしてないとSafariやChrome(webkit系ブラウザ)で、たまにボックス(タイ…

httpでのアクセスをhttpsにリダイレクトする@Apache

httpプロトコルでアクセスされたページをhttps(SSL対応)にリダイレクトさせるメモ。事前にSSL証明書の購入や設定が済んでいる前提で。 環境変数「HTTPS」や「SERVER_PORT」を利用する方法があるようですが、今回は前者を使います。 設定は.htaccessで、リ…

MasonryからFreetile.jsに変更@jQuery

グリッドレイアウトで要素をタイル状に敷き詰めるのにjQuery Masonry(NHKスタジオパークで知名度がグンと上がったあれですね)を使って実装を進めてたんですが、自分の設定がうまくないのかWebkit系ブラウザ(とくにSafari)で表示が崩れてしまい、その原因…

タイマー・時限設定@JavaScript

JavaScriptによるものなので正確性においては注意が必要だけど(閲覧者の環境、設定によって変わってくるので)拡張子も変えずに、既存の静的htmlに埋め込んで使うのにはてっとり早い実装なので一応残しておきます。 ま、日時がとんでもなく違ってるって環境…

img要素のheight:autoの指定(IE8対応)@CSS

レスポンシブWebデザインとか(その他の場合でも)でimg要素の実際のサイズ(width, height)をcssで上書きしてデバイスサイズや親要素の大きさに対応させる場合があります。(別にimg要素のwidth, heightの指定を上書きでない場合でも) 幅を指定して(%に…

スマートフォン向けに表示内容を出し分ける@WordPress

WordPressにはバージョンが3.4から用意されている「wp_is_mobile」っていう関数があって、これを使えば簡単、お手軽にPC向け、スマフォ(スマートデバイス)向けにコンテンツの出し分けが出来ます。 /* スマートフォン向けの内容 */ /* PC向けの内容 */ …

YouTube動画をポップアップ @jQueryプラグインprettyPhoto

動画(YouTube)をモーダルウィンドウでポップアップ表示させる必要があったので、そのメモ。 使ったのはlightboxクローンのjQueryプラグイン「prettyPhoto」です。 www.no-margin-for-errors.com ライセンスはCreative Commons Attribution 2.5ということで…

画像の読み込みを遅延ロードさせる@jQuery-Lazy Load

htmlページ内の画像(img要素)を遅延ロードし、HTTPリクエストを減らして読み込み速度のパフォーマンスを向上させるのにjQueryプラグインのLazy Loadを使ってみました。久しぶりにこれ系(遅延ロード)のものを探したら、なんでも問題が解消されてるようで…

カスタム投稿タイプやカスタム分類のfeed URLを取得する@WordPress

WordPressにカスタム投稿タイプを追加し、指定した投稿タイプの投稿や更に絞って指定した投稿タイプのカスタム分類(カスタムタクソノミー)投稿のfeed URLを取得します。 今回の用途としてはFacebookページへ流す(プラグインRSS Graffitiを使用)ためだけ…

AWS EC2でWordPressをインストール@Amazon EC2

MySQLデータベースを作成 sudoでMySQLモニターにログイン。 $ sudo mysql -u root -p WordPress用のデータベースwordpressを作成。 mysql> create database wordpress; WordPressをインストール Web公開ディレクトリ直下にWordPress用のディレクトリ _wp-dir…

アメブロの「PR」投稿を非表示@jQuery || mootools

アメブロ(Amebaブログ)のfeedを取得して別のサイトに表示しようとすると何件かに一件「PR」という広告記事が混在します。これを表示させたくないという依頼が多くはないまでも、なんだかんだで一年に何回かあるので備忘録として残しておきます。 これまで…

HTML5におけるOGP設定について@HTML5

FacebookやmixiといったOGP(Open Graph Protocol)に対応したサービスを考慮した場合、ソースにそのための記述をする必要があります。 これまでは以下のようにhtml要素にxmlns属性を追加して必要な各値を記述していたのですが、これはXHTML向けの記法らしく…

AWS EC2でURLの正規化@Amazon EC2

.htaccessを使ってURLの正規化を施します。 デフォルトのままだとAWS EC2のApacheでは.htaccessが使えないので注意。 Apacheの設定ファイルhttpd.confを編集する必要があります。 参考 blog.showzine.co URLの正規化 wwwなしで統一し、index.html/index.php…

AWS EC2で.htaccessが使えない@Amazon EC2

デフォルトではAllowOverrideがNoneなのでこれをAllに変更する必要があります。 OS Xのターミナルを起動してssh接続し $ sudo vim /etc/httpd/conf/httpd.conf httpd.confから、.htaccessを含む記述を探して AllowOverride None を AllowOverride All に書き…

AWS EC2でPHP + MySQLをインストール@Amazon EC2

PHPとMySQLのインストール # yum -y install httpd php mysql 再起動 # service httpd restart PHPの確認 # php -v PHP 5.3.28 (cli) (built: Dec 17 2013 00:28:38) phpファイルをアップロードしてhello worldをechoして確認。オーケー。 ついでに他に必要…

AWS EC2 で複数ドメインを使う(バーチャルホスト)@Amazon EC2

Apacheの設定ファイルhttpd.confを編集 rootユーザに切り替えてから以下のファイルを開いて編集して保存します。 /etc/httpd/conf/httpd.conf 最後に以下を追加します。 NameVirtualHost *:80 <VirtualHost *:80> ServerName showzine.co DocumentRoot "/var/www/html/public/" </VirtualHost>…

Amazon Web Servicesの申し込みとEC2の利用@Amazon EC2

AWSアカウント作成とサインイン アカウント作成自体は無料。 新規にアカウントを作成する場合はメールアドレスを入力してから I am a new userを選択してパスワードを入力。 すでにamazon.comのアカウントを持っている場合は そのアカウントでサインイン出来…

FTPが使えるようにする@Amazon EC2

タイムゾーンの確認 $ date 2014年 3月 18日 火曜日 10:09:26 UTC 日にち、曜日は合ってますが時間が違います。 タイムゾーンの変更 sudoコマンドでルート権限に切り替え $ sudo su - タイムゾーンを日本語に設定 # cp -i /usr/share/zoneinfo/Japan /etc/lo…

独自ドメインを使う@Amazon EC2

Amazon EC2ではDNSサーバは立てられないそうで、お名前.comのダイナミックDNSを使ってEC2で独自ドメインを利用できるようにしてみました。 参考記事 Amazon EC2を独自ドメインで使う | 横浜のホームページ制作 スタジオFIXの社長ブログ 微妙に参考記事とは…

Webページを部分的に抽出して別の場所で表示(スクレイピング)@PHP

PHP

とあるWebページの内容を一部抽出して別の場所(同じサーバ上でも別サーバ上でも別ドメインでも)で表示するのに大変重宝しているのがPHPのライブラリ「Simple HTML DOM Parser」です。 他者が作っているコンテンツをさも自分のもののように見せるような使い…