2015-03-19 6 views
1

Я пытаюсь сделать правило перезаписи для визуализации d3, которое я сохраню в своей папке темы. В конце концов я хочуПравила перезаписи Wordpress с использованием Capture

d3/[some-year]/[some-string] 

для перенаправления

wp-content/themes/my-theme/d3-library/[some-year]/[some-string]/index.html 

Однако, я не могу получить правила захвата для работы. Вот что у меня есть до сих пор:

function d3_rewrite() { 
     add_rewrite_rule(
      'wp-content/themes/d3/(20[0-9][0-9]/.*)', 
      'wp-content/themes/my-theme/assets/d3-library/$match[1]/index.html', 
      'top' 
     ); 
    } 
    add_action('init', 'd3_rewrite'); 

Кто-нибудь знает, почему это не работает?

+0

Вы пробовали 'wp-content/themes/my-theme/assets/d3-library/$ 1/index.html', '? –

+0

Это работает! Спасибо! – Reggie

+0

Если вы хотите опубликовать это сообщение в качестве ответа, я подниму его, чтобы отметить это как решение. – Reggie

ответ

1

Использование wp-content/themes/my-theme/assets/d3-library/$1/index.html. Проблема заключается в замене обратной ссылки.

0

Где у вас есть $match[1], разве это не должно быть $matches[1]?

+0

'matches' не работал, поэтому я также попробовал' match', потому что видел его в учебнике регулярных выражений PHP. Поэтому, вероятно, это должно быть «совпадение», но это не решает проблему. – Reggie

+0

Хм ... также не знаю, насколько это актуально, но ваш пример подставляет 'd3/[some-year]/[some-string]', но правило ищет 'wp-content/themes/d3/[ some-year]/[some-string] ' – rafeek

+0

Если я не понимаю вас, разве это не значит, что вы переписываете правила? Чтобы пользователь мог вводить что-то вроде «blah.com/d3/2015/graph» и перенаправляться на что-то уродливое, как 'blah.com/wp-content/themes/d3-library/2015/graph/index.html 'без необходимости видеть уродливый url вообще. – Reggie

Смежные вопросы