我完全不明白。我已经把一个代码在我的功能,使一个短码做上一个和下一个pagepost的类别.我有7个类别。在3个类别中,我已经做了短码完美的工作,但不知何故,它不在第四。我还没有尝试其他类别。我已经把所有的页面在相同的发布日期,正确设置页面的顺序,有相同的父文件夹,有相同的类别。我甚至删除了类别,并建立了一个新的思考可能有故障。
请帮助我,我很困惑,真的不想回去做页面与页面之间的链接......。我的网站是somaliforkids.com在学习数字,字母和颜色的类别是罚款......。它是动物的(https:/somaliforkids.comlearnanimals。毫无逻辑可言......)。它从页面顺序1到3到9到6到16.不按照字母顺序的标题,日期...... 我在我的页面中使用Elementor来放置快捷码。
这是我的代码。
// next
add_shortcode( 'prev', 'prev_shortcode' );
add_shortcode( 'next', 'next_shortcode' );
function next_shortcode($atts) {
global $post;
ob_start();
next_post_link( '<div class="nav-next">%link</div>', '<img class="aligncenter"
src="https://somaliforkids.com/wp-content/uploads/2020/05/right-black.png" width="50" height="35">',
'%title <span class="meta-nav">' . _x( '→', 'Previous post link', 'morphology' ) . '</span>',
true);
$result = ob_get_contents();
ob_end_clean();
return $result;
}
function prev_shortcode($atts) {
global $post;
ob_start();
previous_post_link( '<div class="nav-previous">%link</div>', '<img class="aligncenter"
src="https://somaliforkids.com/wp-content/uploads/2020/05/left-black.png" width="50" height="35">',
'%title <span class="meta-nav">' . _x( '→', 'Previous post link', 'morphology' ) . '</span>',
true );
$result = ob_get_contents();
ob_end_clean();
return $result;
}
谢谢你的帮助,Isabelle
我认为你不需要为这个创建短码,因为wordpress已经有了你需要的功能。你只是没有使用它们的参数。
next_post_link();
previous_post_link();
当你阅读函数代码参考的next_post_link,你会看到它接受多个参数。https:/developer.wordpress.orgreferencefunctionsnext_post_link。
其中之一是。
$in_same_term(bool)
(可选)链接是否应在同一分类法术语中,默认值:false。
所以你只要把你的 单.php 文件在你想要的位置。
<?php next_post_link( '%link', 'Next post in category', true ); ?>
当然你也可以使用你的箭头黑色图像等等... ... 真为$in_same_term参数。
如果你想有一个特定的分类法内的文章,你可以使用。
<?php next_post_link( '%link', 'Next post in taxonomy', true, '', 'your_custom_taxonomy' ); ?>
看'''没有值?这是为一个数组或逗号分隔的排除术语ID列表,如果你需要它们。
希望能帮到你。