0
我已經嘗試這個功能來重寫自定義帖子的URL。 這裏是我的URL重寫代碼,自定義帖子類型的重寫url後分頁不工作
add_filter('post_type_link', 'brand_permalink', 1, 3);
function brand_permalink($permalink, $post_id, $leavename) {
if (strpos($permalink, '%campaign-responses-category%') === FALSE) return $permalink;
$post = get_post($post_id);
if (!$post) return $permalink;
// Get taxonomy terms
$terms = wp_get_object_terms($post->ID, 'campaign-responses-category');
if (!is_wp_error($terms) && !empty($terms) && is_object($terms[0]))
$taxonomy_slug = $terms[0]->slug;
else $taxonomy_slug = 'no-brand';
return str_replace('%campaign-responses-category%', $taxonomy_slug, $permalink);
}
這裏是代碼爲分頁。
function wpbeginner_numeric_posts_nav() {
if(is_singular())
return;
global $wp_query;
/** Stop execution if there's only 1 page */
if($wp_query->max_num_pages <= 1)
return;
$paged = get_query_var('paged') ? absint(get_query_var('paged')) : 1;
$max = intval($wp_query->max_num_pages);
/** Add current page to the array */
if ($paged >= 1)
$links[] = $paged;
/** Add the pages around the current page to the array */
if ($paged >= 3) {
$links[] = $paged - 1;
$links[] = $paged - 2;
}
if (($paged + 2) <= $max) {
$links[] = $paged + 2;
$links[] = $paged + 1;
}
echo '<div class="pager"><div class="pages wp-compaign">' . "\n";
/** Previous Post Link */
if (get_previous_posts_link())
printf('<li style="display: inline-block;list-style: none;">%s</li>' . "\n", get_previous_posts_link());
/** Link to first page, plus ellipses if necessary */
if (! in_array(1, $links)) {
$class = 1 == $paged ? ' class="active"' : '';
printf('<li%s style="display: inline-block;list-style: none;"><a class="page larger" href="%s">%s</a></li>' . "\n", $class, esc_url(get_pagenum_link(1)), '1');
if (! in_array(2, $links))
echo '<li style="display: inline-block;list-style: none;">…</li>';
}
/** Link to current page, plus 2 pages in either direction if necessary */
sort($links);
foreach ((array) $links as $link) {
$class = $paged == $link ? ' class="active"' : '';
printf('<li%s style="display: inline-block;list-style: none;"><a class="page larger" href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link($link)), $link);
}
/** Link to last page, plus ellipses if necessary */
if (! in_array($max, $links)) {
if (! in_array($max - 1, $links))
echo '<li style="display: inline-block;list-style: none;">…</li>' . "\n";
$class = $paged == $max ? ' class="active"' : '';
printf('<li%s style="display: inline-block;list-style: none;"><a class="page larger" href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link($max)), $max);
}
/** Next Post Link */
if (get_next_posts_link())
printf('<li style="display: inline-block;list-style: none;">%s</li>' . "\n", get_next_posts_link());
echo '</div></div>' . "\n";
}
分頁鏈接http://example.com/site-name/campaign-responses/page/2/ 但其獲得的404錯誤頁面沒有找到。 一旦我刪除.htaccess和刪除重寫url的功能,但仍然得到404錯誤。請任何人可以幫助我。先謝謝你。
感謝您的回答。我嘗試了很多次,但沒有成功。 – meet
我解決了我的問題。我設置了自定義的帖子名稱和頁面名稱,所以分頁不起作用。然後我改變了自定義發佈的名稱它解決了問題和分頁工作也重寫URL。 – meet