1

次のことを達成する方法を知っている人はいますか:

  • 「プロジェクト」と呼ばれるカスタム投稿タイプがあります。5 つの異なるページ レイアウトがあります (それぞれ、異なるサイズで異なる数の画像が配置されています)。画像を識別できれば、CSS を使用して配置できると思います。各レイアウトに、必要な画像のコンテナを含む独自のテンプレート ページがあり、それぞれに画像を配置するための CSS がある場合。
  • 投稿エディター ビューの右側にテンプレートの選択を追加できるかどうか疑問に思っています。この方法でページに利用できるように、各投稿にテンプレート (1 ~ 5) を割り当てることができます。
  • メインの投稿エディターに画像アップロード フィールドとその他のデータ用のカスタム メタ ボックスを追加していますが、理想的には、他のページが必要なアップロード フィールドのみを表示するように変更する必要があります。

アイデアはありますか?各レイアウト (5 つのテンプレート) にカスタム投稿タイプを設定して、必要なレイアウト タイプで新しいプロジェクトを投稿できるようにすることを検討しました。次に、ページで 5 つのカスタム投稿タイプ (レイアウト) すべてを含むループをクエリします。後で編集するプロジェクトを見つけるには、プロジェクトがどのテンプレート ページ (カスタム投稿タイプ) に属しているかを知る必要がありますが、さらに重要なのは、プロジェクトへの URL が www.sitename.co ではないことです。 uk/projects ですが、代わりに www.sitename.co.uk/custom-post-type1, www.sitename.co.uk/custom-post-type2 ??? そうじゃない?

いつものように、どんな助けも本当に感謝しています。ありがとう

4

2 に答える 2

1

ここに私がこれまでに特定したコードがありますが、カスタマイズする方法はありますか?

これは functions.php に入れる必要がありますか?

// Check if the post has a special template
$template = get_post_meta($post->ID, '_wp_mf_page_template', true);

if (!$template || $template == 'default') {
return;
}

$template = TEMPLATEPATH.'/'.$template;

if ( $template = apply_filters( 'template_include', $template ) ) {
include($template);
die();
}
return;

2 番目のコード:

// Check if the post_type has page attributes
// if is the case is necessary need save the page_template
if ($_POST['post_type'] != 'page' && isset($_POST['page_template'])) {
  add_post_meta($post_id, '_wp_mf_page_template', $_POST['page_template'], true) or update_post_meta($post_id, '_wp_mf_page_template', $_POST['page_template']);
}

3 番目のコード:

//MF Meta box for select template
function mf_metabox_template () {
global $post;

if ( 0 != count( get_page_templates() ) ) {

  $template = get_post_meta($post->ID, '_wp_mf_page_template', TRUE);
  $template =  ($template != '') ? $template : false;
?>
  <label class="screen-reader-text" for="page_template"><?php _e('Page Template') ?></label><select name="page_template" id="page_template">
  <option value='default'><?php _e('Default Template'); ?></option>
  <?php page_template_dropdown($template); ?>
  </select>
<?php  
}
}
于 2013-02-24T19:37:26.687 に答える