カスタムフィールドの表示がおかしくなるときの対策
CORE SERVERやXREAの場合、ファイルのアップロードや「wp-dbmanager」プラグインがうまく稼動しません。
htaccessファイルに、下記の記述をすると解決します。
AddHandler application/x-httpd-phpcgi .php
しかし、これだと、カスタムフィールドを追加したとき、データ更新はできるのですが、表示がおかしくなります。
そこで、「アップロード」用と「wp-dbmanager」用に記述します。
①新しくhtaccessファイルを作成し、以下のように記述します。
<files async-upload.php>
AddHandler application/x-httpd-phpcgi .php
</files>
<files admin.php>
AddHandler application/x-httpd-phpcgi .php
</files>async-upload.phpが「アップロード」用で、admin.phpが「wp-dbmanager」用の設定です。
WordPress2.3以下の場合は、upload.phpが「アップロード」用になります。②「wp-admin」カテゴリー配下に、このhtaccessファイルをアップロードする
PHPがセーフモードで動いているレンタルサーバーは、htaccessファイルの設定が必要なようです。
カスタムフィールドのキーを取得
WordPerssでカスタムフィールドのキーを取得する関数が、
get_post_custom_keys()
です。
PHP形式で出力されます。
この関数は、記事に属する全てのキー名称を取得します。
記事に複数のキーを登録していて、全てもキーと値を、「キー名:値」と表示したいときは、次のように記述します。
<?php
$wpkeys = get_post_custom_keys();
foreach($wpkeys as $wpkey) {
echo $wpkey.":";
echo get_post_meta($post->ID,$wpkey,TRUE);
}
?>
WordPerssでカスタムフィールドの値を取得
WordPerssでカスタムフィールドの値を取得する関数が、
get_post_meta()
です。
投稿記事以外の場所に、ひとこと挿入したいときに利用できます。
PHP形式で出力されます。
この関数はパラメータ挿入ができます。
get_post_meta(①,②,③);
①metaデータが属する記事idを指定する
通常は、$post->ID を使って記事のidを取得②キーの文字列を指定
③配列の返し方
TRUE ・・・ 配列の最初を1つの文字列として返す
FALSE ・・・ 配列として返す
たとえば、その記事のカスタムフィールドのキー「wordpress」の値を表示したいときは、次のように記述します。
<?php echo get_post_meta($post->ID,wordpress,TRUE); ?>
配列で出力したいときは、foreach関数を利用するといいでしょう。
カスタムフィールドのデータを挿入する<?php the_meta(); ?>
WordPressで、カスタムフィールドのデータを挿入するテンプレートタグが<?php the_meta(); ?>です。
ループ内で使用します。
続きを読む・・・
