我需要使用Genesis框架为自定义post类型归档模板创建一个自定义循环,该模板尽可能类似于此页面(www.manta.com/totd)。
这是我所拥有的东西的粘贴,它不起作用。
http://pastebin.com/g1EK5f6M
以及当前存档模板
http://pastebin.com/A6UufNMu 这就产生了:m.angiemeekerdesigns。com/总计
有人能帮我了解为什么我当前的代码不起作用吗?
更新:在做了一些工作之后,我来到了下面的粘贴-它的工作大约是我需要的80%,除了顶部第一个循环的一篇文章(功能)显示了下面第二个循环的文章应该显示的内容,反之亦然。
现在,这里有一个指向该网站页面的链接:http://m.angiemeekerdesigns.com/totd
还有我所掌握的密码。
<?php
/**
*
* Display the Tip of the Day Custom Post Type archive custom fields using
* ACF.
*
* @author Angie Meeker
* @uses Advanced Custom Fields
*/
add_action(\'genesis_entry_content\',\'genesis_do_post_title\', 2);
//* Removes Continue Reading from the echoed excerpt
function sbt_auto_excerpt_more( $more ) {
return \'aaa\';
}
add_filter( \'excerpt_more\', \'sbt_auto_excerpt_more\', 20 );
function sbt_custom_excerpt_more( $output ) {return preg_replace(\'/<a[^>]+>Continue reading.*?<\\/a>/i\',\'\',$output);
}
add_filter( \'get_the_excerpt\', \'sbt_custom_excerpt_more\', 20 );
//* Add Tip of the Day body class to the head
add_filter( \'body_class\', \'add_tiparchives_body_class\' );
function add_tiparchives_body_class( $classes ) {
$classes[] = \'tiparchives-post-type-archive-{tipoftheday}\';
return $classes;
}
// Return Category and Tip of the Day on Single Posts
add_action ( \'genesis_before_content\', \'show_totd\', 9 );
function show_totd() {
echo \'<div class="totd-cats-title">Tip of the Day</div>\';
}
// Remove Post Author
add_filter( \'genesis_post_info\', \'remove_post_author_totd_posts\' );
function remove_post_author_totd_posts($post_info) {
$post_info = \'[post_date]\';
return $post_info;
}
/** Replace the standard loop with our custom loop */
remove_action( \'genesis_loop\', \'genesis_do_loop\' );
add_action( \'genesis_loop\', \'manta_tips_feature\' );
add_action( \'genesis_loop\', \'manta_tips_teasers\' );
/** Show the first first post from the TOTD Custom Post Type */
function manta_tips_feature() {
echo \'<div class="entry-highlight">Current Tip of the Day</div>\';
global $paged; // current paginated page
global $query_args; // grab the current wp_query() args
$args = array(
\'post_type\' => \'tipoftheday\',
\'posts_per_page\'=> \'1\',
\'paged\' => $paged,
);
genesis_custom_loop( wp_parse_args($query_args, $args) );
// Return if CPT Tip of the Day
add_action( \'genesis_after_entry_content\', \'manta_tips_pre_features\' );
function manta_tips_pre_features() {
// Store the pre tips data
$tips_data_pre = array(
\'totd_tags\' => get_field( \'totd_tags\' ),
\'tip_article_headline\' => get_field( \'tip_article_headline\' ),
\'article_author\' => get_field( \'article_author\' ),
\'article_author_link\' => get_field( \'article_author_link\' ),
);
// Only output if we have tips data
if ($tips_data_pre[\'totd_tags\'] != \'\' ||
$tips_data_pre[\'tip_article_headline\'] != \'\' ||
$tips_data_pre[\'article_author\'] != \'\' ||
$tips_data_pre[\'article_author_link\'] != \'\') {
echo \'<div class="tip-excerpt"><p><div class="entry-content">\';
echo \'<div class="entry-terms">\' , do_shortcode(\'[post_terms taxonomy="totd_tags" before="See More Tips For: " taxonomy="totd_tags"] \'),\'</div>\' ;
echo \'<div class="entry-terms">
<div class="share">Share This Tip:</div>
<div class="addthis_toolbox addthis_default_style">
<a class="addthis_button_preferred_1"></a>
<a class="addthis_button_preferred_2"></a>
<a class="addthis_button_preferred_3"></a>
<a class="addthis_button_preferred_4"></a>
<a class="addthis_button_compact"></a>
<a class="addthis_counter addthis_bubble_style"></a>
</div>
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=manta"></script>
</div>
</div></div>\';
echo \'</p><div class="divider"></div>\';
}
}
}
/** Show the first 10 previous posts from the TOTD Custom Post Type */
function manta_tips_teasers() {
echo \'<div class="entry-highlight">Previous Tips</div>\';
global $paged; // current paginated page
global $query_args; // grab the current wp_query() args
$args = array(
\'post_type\' => \'tipoftheday\',
\'posts_per_page\'=> \'10\',
\'paged\' => $paged,
);
genesis_custom_loop( wp_parse_args($query_args, $args) );
// Return if CPT Tip of the Day
add_action( \'genesis_after_entry_content\', \'manta_tips_teaser_pre\' );
function manta_tips_teaser_pre() {
// Store the pre tips data
$tips_data_pre = array(
\'totd_tags\' => get_field( \'totd_tags\' ),
);
// Only output if we have tips data
if ($tips_data_pre[\'totd_tags\'] !=\'\') {
echo \'<div class="tip-excerpt"><p><div class="entry-content">\';
echo \'<div class="entry-terms">\' , do_shortcode(\'[post_terms taxonomy="totd_tags" before="See More Tips For: " taxonomy="totd_tags"] \'),\'</div>\' ;
echo \'</p><div class="divider"></div>\';
}
}
}
genesis();
SO网友:angiemeeker
这就是成功的原因。您可以在m.angiemekerdesigns上看到结果。com/总计。我仍在努力使较低级别的帖子在摘录中的字数更少,风格也略有不同,但我认为这是一个与此不同的问题。
/**
*
* Display the Tip of the Day Custom Post Type archive custom fields using
* ACF.
*
* @author Angie Meeker
* @uses Advanced Custom Fields
*/
add_action(\'genesis_entry_content\',\'genesis_do_post_title\', 2);
//* Removes Continue Reading from the echoed excerpt
add_filter( \'excerpt_more\', \'sbt_auto_excerpt_more\', 20 );
function sbt_auto_excerpt_more( $more ) {
return \'aaa\';
}
add_filter( \'get_the_excerpt\', \'sbt_custom_excerpt_more\', 20 );
function sbt_custom_excerpt_more( $output ) {
return preg_replace(\'/<a[^>]+>Continue reading.*?<\\/a>/i\',\'\',$output);
}
//* Add Tip of the Day body class to the head
add_filter( \'body_class\', \'add_tiparchives_body_class\' );
function add_tiparchives_body_class( $classes ) {
$classes[] = \'tiparchives-post-type-archive-{tipoftheday}\';
return $classes;
}
// Return Category and Tip of the Day on Single Posts
add_action ( \'genesis_before_content\', \'show_totd\', 9 );
function show_totd() {
echo \'<div class="totd-cats-title">Tip of the Day</div>\';
}
// Remove Post Author
add_filter( \'genesis_post_info\', \'remove_post_author_totd_posts\' );
function remove_post_author_totd_posts($post_info) {
$post_info = \'[post_date]\';
return $post_info;
}
/** Replace the standard loop with our custom loop */
remove_action( \'genesis_loop\', \'genesis_do_loop\' );
add_action( \'genesis_loop\', \'totd_do_loop\');
//add_action( \'genesis_loop\', \'totd_teasers_do_loop\');
add_action(\'genesis_loop\', \'totd_do_loop\');
function totd_do_loop() {
global $wp_query;
// Set up your query here
$paged = ( get_query_var( \'paged\' ) ) ? get_query_var( \'paged\' ) : 1;
$query = array(
\'post_type\' => \'tipoftheday\',
\'orderby\' => \'date\',
\'posts_per_page\' => \'11\',
\'paged\' => $paged,
);
$wp_query = new WP_Query( $query );
if( $wp_query->have_posts() ):
while( $wp_query->have_posts() ): $wp_query->the_post();
// Get the custom fields
// Store the pre tips data
$tips_data_pre = array(
\'totd_tags\' => get_field( \'totd_tags\' ),
\'tip_article_headline\' => get_field( \'tip_article_headline\' ),
\'article_author\' => get_field( \'article_author\' ),
\'article_author_link\' => get_field( \'article_author_link\' ),
);
// Only output if we have tips data
if ($tips_data_pre[\'totd_tags\'] != \'\' ||
$tips_data_pre[\'tip_article_headline\'] != \'\' ||
$tips_data_pre[\'article_author\'] != \'\' ||
$tips_data_pre[\'article_author_link\'] != \'\') {
echo \'<span class="date time published" title="%1$s">\' , do_shortcode(\'[post_date]\'),\'</span>\' ;
echo \'<div class="tip-excerpt"><p><div class="entry-content">\';
echo \'<div class=h1 entry-title"><a href="\'.get_permalink().\'"title="\'.get_the_title().\'">\' . get_the_title() . \'</a></div>\';
echo the_excerpt();
echo \'<div class="entry-terms">\' , do_shortcode(\'[post_terms taxonomy="totd_tags" before="See More Tips For: " taxonomy="totd_tags"] \'),\'</div>\' ;
if( $wp_query->current_post == 0 && !is_paged() ) {
echo \'<div class="entry-terms">\';
echo \'<div class="share">Share This Tip:</div>\';
echo \'<div class="addthis_toolbox addthis_default_style">\';
echo \'<a class="addthis_button_preferred_1"></a>\';
echo \'<a class="addthis_button_preferred_2"></a>\';
echo \'<a class="addthis_button_preferred_3"></a>\';
echo \'<a class="addthis_button_preferred_4"></a>\';
echo \'<a class="addthis_button_compact"></a>\';
echo \'<a class="addthis_counter addthis_bubble_style"></a>\';
echo \'</div>\';
echo \'<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=manta"></script>\';
echo \'</div>\';
}
echo \'</div></p><div class="divider"></div></div>\';
}
endwhile;
// Pagination! Woo!
genesis_posts_nav();
endif;
// Reset the query
wp_reset_query();
}
genesis();