カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

カスタムフィールドを追加し、常に投稿画面に表示させる – WordPress

記事を新規投稿する際、プラグインを使用せずカスタムフィールドの入力欄をデフォルトで表示させる、という方法があったのでご紹介します。
自作のオリジナルテーマであることが前提です。

テーマのfunctions.phpに記述します。

admin_menuアクションフックでカスタムボックスを定義
(管理画面メニューの基本構造が配置された後に実行する)

add_action('admin_menu', 'add_custom_fields');

また、add_meta_boxesアクションフックでも可能なようです。
(投稿編集画面が読み込まれた際に実行する(バージョン3.0以降))

add_action('add_meta_boxes', 'add_custom_fields');

投稿画面にカスタムフィールドを表示するカスタムセクションを追加

function add_custom_fields() {
    add_meta_box('my_sectionid', 'カスタムフィールド', 'my_custom_fields', 'post');
}

固定ページ投稿画面に追加する場合は

add_meta_box('my_sectionid', 'カスタムフィールド', 'my_custom_fields', 'page');

add_meta_box関数について 続きを読む…»

5,315 views

画像を挿入した時のタグをカスタマイズ – WORDPRESS

挿入した画像のリンクにLightbox等の属性を追加したいとき、
その都度、手作業で挿入されたタグを編集してもいいですが
自動でできれば、それに越したことはないですよね?

そんなとき、フィルターフックに自作関数をフックして挿入されるタグをカスタマイズします。
※挿入されるときに適用されるので、それまでの投稿には反映されません。

Lightboxで必要なrel属性を追加します。以下のコードをfunctions.phpに追加。

function my_image_tag( $html, $id ) {
    $html = preg_replace('/a href=/', 'a rel="lightbox['.$id.']" href=', $html); 
    return $html;
}
add_filter( 'image_send_to_editor', 'my_image_tag', 10, 2 );

続きを読む…»

6,366 views

WORDPRESSの子テーマを作成する

WORDPRESSでは、既存のテーマを元に子テーマを作成することができます。
最低限必要なのは、テーマの基本となるスタイルシートファイル(style.css)のみです。
あとは、スクリーンショットがあれば尚可。

まず、themesディレクトリに子テーマ用のディレクトリを作成します。
ここでは親テーマの名前を「parent」、子テーマの名前を「child」とします。

wp-content/themes/child

style.cssを作成します。

/*
    Theme Name: child
    Template: parent
*/

@charset "utf-8";
@import url("../parent/style.css");

@import url();にて親テーマのCSSファイルを相対パスを指定して読み込みます。
そして、このファイルにスタイルを記述していけば親テーマのスタイルよりもこちらが優先されます。
続きを読む…»

2,405 views

スマートフォン対応デザイン

当サイトのスマートフォン対応デザインが完成しました。

iPhoneやAndroid端末でアクセスするとそちらが表示されるようになっています。

1,622 views

コメントフォームの設置

headタグ内のwp_head();より前に記述。
コメント返信用のJavaScriptを挿入してくれます。

<?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>

記事表示のループの中に以下を追加します。

<?php comments_template(); ?>

簡単にコメント機能を追加するには以上です。
フォームや、コメント表示など、デフォルトの機能で自動にやってくれます。
フォームをカスタマイズする場合は、comments.phpを作成する必要があります。
それはまた後日。。

こちらを参考にさせていただきました。
http://scianto.net/2009/03/02232201.php

3,611 views