2017-02-20 12 views
1

Я хочу создать одну страницу с Vue.js 2, а затем добавить ее на существующий веб-сайт WordPress, например. как новая страница в меню. Как я буду делать это в WordPress? Существует уже старый сайт WordPress, и я собираюсь разработать страницу/инструмент с Vue, поэтому, когда он закончен, я хочу добавить его где-нибудь в меню сайта WordPress как новую страницу.интегрировать страницу Vue.js с помощью WordPress?

Возможно ли это? Какие шаги я должен соблюдать?


Я создал пользовательский шаблон и внутри у меня есть простое сообщение div.

new Vue({ 
 
     el: "#hello-world-app", 
 
     data() { 
 
      return { 
 
      msg: "Hello World!" 
 
      } 
 
     } 
 
     });
<script src="https://unpkg.com/vue/dist/vue.js"></script> 
 
<div id="main-content" class="main-content"> 
 

 
\t <div id="primary" class="content-area"> 
 
\t \t <div id="content" class="site-content" role="main"> 
 
\t \t \t 
 
    <div id="hello-world-app"> 
 
     <h1>{{ msg }}</h1> 
 
    </div> 
 

 

 
\t \t </div><!-- #content --> 
 
\t </div><!-- #primary --> 
 
</div><!-- #main-content -->

В functions.php я добавил эти:

function my_enqueue_stuff() { 
    if (get_page_template_slug() == 'page-surveypage.php') { 
     wp_enqueue_script('vue-dist', 'get_template_directory_uri() . '/js/vue.js, array(), 1.1, true); 
     wp_enqueue_script('vue-survey', 'get_template_directory_uri() . '/js/survey.js, array(), 1.1, true); 
    } 
} 
add_action('wp_enqueue_scripts', 'my_enqueue_stuff'); 

Однако, когда я загрузить страницу с пользовательского шаблона он показывает {{сбщ}}. Неправильно ли я загрузил скрипт vue и поместил его в папку js?

+0

Я уже сделал это - вы можете проверить его здесь https://github.com/bedakb/vuewp –

+0

Спасибо, но я не хочу, чтобы одна страница темы с нуля. Я хочу, чтобы одна страница была построена с добавлением Vue на существующий веб-сайт WordPress. – linous

+0

Любые ошибки javascript в вашей консоли разработчика, в вашем браузере? – MacPrawn

ответ

1

Скорее всего, я поеду с новым шаблоном в вашей (дочерней) теме. Если это только для этой одной страницы, сделайте ее определенным шаблоном страницы, названным с пулком страницы, на которой будет показано ваше приложение Vuejs. Если вы захотите использовать это на нескольких страницах, вы можете создать общий шаблонный файл, который авторы могут назначить любой создаваемой им странице, или вы можете обернуть компонент/приложение vuejs в короткий код. (см. файлы шаблонов naming conventions)

После того, как вы определились с методом доставки, вам просто нужно будет загрузить файл javascript vuejs, созданный вашим поставщиком, а также любые зависимости, t в вашем приложении.

Помогло ли это?

+0

Это помогает, но мне еще нужно попробовать и посмотреть, как это работает. Это будет только одна страница, поэтому я должен создать конкретный шаблон страницы. , так что если я правильно понял: 1) Я создам, например. vuepage.php, добавьте его в папку темы. И внутри это будет иметь код HTML и CSS, а также путь cdn, правильно? 2) Имейте отдельный файл vuepage.js с кодом JS, который также загрузит его в папку темы. 3) Загрузите файл .js с помощью wp_enqueue_scripts или что-то в этом роде? Могу ли я пойти так? – linous

+0

Да, звучит о праве на меня! – MacPrawn

+0

Я добавил код в первом сообщении. – linous