2016-09-29 5 views
2

Я установил блог hexo и сконфигурировал два домена верхнего уровня, указывающие на один и тот же экземпляр e.g. domain.com and domain.orgКак добавить каноническую ссылку в блоге hexo?

Я хочу установить канонический URL для всего сайта. Для этого есть plugin, но я не могу понять, что делать, поскольку я не знаю jade или ejs.

Есть ли способ, которым я могу это сделать с изменением тем или без них?

ответ

2

Нет, это не способ без изменения темы (или с темой, которая уже поддерживает ее).

Тема - это своего рода шаблон для ваших страниц, при создании сайта тема обрабатывается, и ваш контент вставляется, результат сохраняется в файле .html. Легко настроить тему для включения канонической ссылки.

Поскольку я не знаю, какую тему вы используете, я возьму пример tranquilpeak. В источнике темы найдите layout/_partial/head.ejs, этот файл отвечает за создание раздела <head> каждого HTML-файла в вашем блоге. В этом файле после тега <head> вы поместите помощник плагина <%- autoCanonical(config, page) %>.

EJS здесь, язык шаблона. То, что помещено внутри тега <% %>, будет обработано во время генерации сайта, и его результат будет помещен в окончательный файл HTML. Плагин, который вы упомянули, имеет вспомогательную функцию, называемую autoCanonical, которая будет оценена предварительным процессором Hexo EJS, и все, что она вернет, перейдет в HTML.

EDIT:

Использование темы https://github.com/tufu9441/maupassant-hexo (Jade шаблоны)

Эта тема она основана на шаблонах Jade, вы должны добавить вспомогательный плагин где-то около Line 26 of base.jade файла, а также аналогичная модификация до this place on base-without-sidebar.jade файл

| !{ autoCanonical(config, page) } 

сделает трюк.

+1

Я использую это https://github.com/tufu9441/maupassant-hexo – pr4bh4sh

+0

Найденное место, обратите внимание, что в директории макета для проекта темы есть все макеты для вашего блога hexo. Например, сообщение post используется для размещения post.jade. Его содержимое расширяется внутри «блочного содержимого» базы, нефритового макета. Таким образом, base.jade имеет базовый html-эшафот, а другие макеты используются для заполнения пробелов (нижние колонтитулы, заголовки, боковые панели и т. Д.). – JrBenito