0
私が取り組んでいるこのショートコードでは、いくつかのことがあります。これについての私の知識は最高ではありませんが、私は学びたいと思っています。WordPress - CPTを出力するショートコードを作成する方法
/**
* Recent Project Shortcode
*/
function project_query() {
$args = array(
'posts_per_page' => 1,
'post_type' => 'projects',
'order' => 'ASC',
);
$projects_query = new WP_Query($args);
if ($projects_query->have_posts()) :
// var_dump(the_post_thumbnail_url("full")); exit;
$html_out = '<article class="recent-project" style="background: url(' . $featured_img . ') no-repeat center center; background-size: cover;">';
while ($projects_query->have_posts()) :
$projects_query->the_post();
// Do stuff with each post here
$title = get_the_title();
$link = get_the_permalink();
$featured_img = get_the_post_thumbnail_url($post->ID, 'full');
$html_out .= '<h5>Latest Project</h5>' . '<h2>' . $title . '</h2>' . '<a class="btn btn-lg btn-tertiary" href="' . $link . '">' . 'Discover' . '</a>';
endwhile;
$html_out .= '</article>';
else : // No results
echo "Nothing to show";
endif;
wp_reset_query();
return $html_out;
}
add_shortcode('show_project', 'project_query');
ここにいくつかの問題があります。これは、フロントエンドでプロジェクト名を取得して、それが適切なページにリンクしているということです。
ショートコードを使用するときの表示方法を次に示します。[show_projects posts_per_page="3" order="ASC"]
$args
をユーザーが修正するのは簡単です。もう1つは動作していないのは、私がやろうとしている背景のURLです。フロントエンドでは、バックグラウンドのURLを除いてすべてが出力されています。
このコードを試してみてください!どのように私は短いコードのattsとして使用することができますパラメータを抽出することができますか? –
まず、 '$ atts'パラメータをshortcode関数に追加すると、' $ atts ['example_attribute'] 'のように使うことができます。上記のコードを編集したので、簡単に使用できます。 –