Изменить постоянную ссылку на произвольный тип сообщенияPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Изменить постоянную ссылку на произвольный тип сообщения

Сообщение Anonymous »

Я создаю новый тип сообщения и устанавливаю 'rewrite' => false, затем для установки новой постоянной ссылки использую:

Код: Выделить всё

// add to our plugin init function
global $wp_rewrite;
$dariche_structure = '/d/%post_id%/%dariche%';
$wp_rewrite->add_rewrite_tag("%dariche%", '([^/]+)', "dariche=");
$wp_rewrite->add_permastruct('dariche', $dariche_structure, false);

// Add filter to plugin init function
add_filter('post_type_link', 'dariche_permalink', 10, 3);
// Adapted from get_permalink function in wp-includes/link-template.php
function dariche_permalink($permalink, $post_id, $leavename) {
$post = get_post($post_id);
$rewritecode = array(
'%year%',
'%monthnum%',
'%day%',
'%hour%',
'%minute%',
'%second%',
$leavename? '' : '%postname%',
'%post_id%',
'%category%',
'%author%',
$leavename? '' : '%pagename%',
);

if ( '' != $permalink && !in_array($post->post_status, array('draft', 'pending', 'auto-draft')) ) {
$unixtime = strtotime($post->post_date);

$category = '';
if ( strpos($permalink, '%category%') !== false ) {
$cats = get_the_category($post->ID);
if ( $cats ) {
usort($cats, '_usort_terms_by_ID'); // order by ID
$category = $cats[0]->slug;
if ( $parent = $cats[0]->parent )
$category = get_category_parents($parent, false, '/', true) . $category;
}
// show default category in permalinks, without
// having to assign it explicitly
if ( empty($category) ) {
$default_category = get_category( get_option( 'default_category' ) );
$category = is_wp_error( $default_category ) ? '' : $default_category->slug;
}
}

$author = '';
if ( strpos($permalink, '%author%') !== false ) {
$authordata = get_userdata($post->post_author);
$author = $authordata->user_nicename;
}

$date = explode(" ",date('Y m d H i s', $unixtime));
$rewritereplace =
array(
$date[0],
$date[1],
$date[2],
$date[3],
$date[4],
$date[5],
$post->post_name,
$post->ID,
$category,
$author,
$post->post_name,
);
$permalink = str_replace($rewritecode, $rewritereplace, $permalink);
} else { // if they're not using the fancy permalink option
}
return $permalink;
}
Мое новое имя типа сообщения — дариче.
Моя постоянная ссылка по умолчанию для всех сообщений в настройках:article/%post_id%/%postname% /.

Теперь моя постоянная ссылка на мой новый тип сообщения — d/%post_id%/%postname%/. Но это не работает и просто показывает ошибку 404! В чем проблема в моем коде?

Подробнее здесь: https://stackoverflow.com/questions/372 ... -post-type
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Добавление настраиваемого поля в произвольный тип сообщения в Wordpress
    Anonymous » » в форуме Php
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Добавление настраиваемого поля в произвольный тип сообщения в Wordpress
    Anonymous » » в форуме Php
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Узнать идентификатор трека или использовать постоянную ссылку для потоковой передачи трека?
    Anonymous » » в форуме Android
    0 Ответы
    30 Просмотры
    Последнее сообщение Anonymous
  • Как создать постоянную ссылку на мою страницу?
    Anonymous » » в форуме CSS
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Установите описание, черновик и постоянную ссылку с помощью API Blogger с PHP.
    Anonymous » » в форуме Php
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Php»