Как изменить только домашний URL lo go на WordPress сайте с темой oceanWP? - PullRequest
1 голос
/ 14 января 2020

У меня развернут сайт, скажем, ab c .com, который использует angular для домашней страницы и WordPress для блогов. Я развернул сайт WordPress в подпапке внутри ab c .com. Структура файла такая, как показано на рисунке ниже.

Теперь я хочу изменить только ссылку на домашнюю страницу в lo go веб-сайта WordPress, которая при нажатии перенаправит нас на ab c .com , Остальные ссылки в блоге будут работать нормально, скажем 'ab c .com / myProj / blog-detail'

Изображение структуры файла

1 Ответ

1 голос
/ 14 января 2020

OceanWP использует функцию the_custom_logo() для отображения вашего пользовательского lo go и ссылки на домашнюю страницу сайта WordPress (example.com/myProj). Файл, который отображает lo go, находится по адресу /wp-content/themes/oceanwp/partials/header/logo.php.

. Вы можете использовать хук get_custom_logo для изменения HTML пользовательского lo go и измените ссылку, чтобы она указывала на фактическую домашнюю страницу (example.com).

Для этого вам нужно будет создать дочернюю тему (или плагин) и вставить следующее в вашем functions.php файле:

<?php
/**
 * Modify the logo link
 *
 * @param string $html  Custom logo HTML output
 * @param int $blog_id  ID of the blog to get the custom logo for
 * @return string       Custom logo HTML output with modified link
 */
function oceanwp_child_modify_logo_link( $html, $blog_id ) {
  $custom_logo_id = get_theme_mod( 'custom_logo' );
  $html = sprintf(
    '<a href="%1$s" class="custom-logo-link" rel="home">%2$s</a>',
    esc_url( 'https://example.com/' ),  // modify the link here
    wp_get_attachment_image( $custom_logo_id, 'full', false, $custom_logo_attr )
  );

  return $html;
}

add_filter( 'get_custom_logo', 'oceanwp_child_modify_logo_link', 10, 2 );

Если вам также нужно обрабатывать такие вещи, как атрибут lo go alt, если он пустой или lo go не установлен, вы можете обратиться к get_custom_logo() функция.

(я проверял это на WordPress 5.3.2 и OceanWP 1.7.4)

...