Задать вопрос
@HankeTM

Как сделать логотип на главной не кликабельным, а на остальных страницах наоборот (для всех CMS)?

Добрый день!
Видел на тостере похожую тему: Как сделать кликабельный логотип на всех страницах, кроме главной?
Но этот способ работает только для битрикса, я так понимаю.

Есть ли способ реализовать скрипт, подходящий для все CMS? Ну или хотя бы, подходящий для WP и Joomla.

Вот html вывода логотипа на WP:

<div class="w-logo  with_transparent">
    <a class="w-logo-link" href="https://site.ru/">
        <span class="w-logo-img">
            <img class="for_default" src="https://site.ru/wp-content/uploads/2016/07/logo.png" width="566" height="278" alt="">
        </span>
     </a>
</div>


И php (ничего в коде не понимаю, поэтому кидаю содержимое всего файла):

$class_name = '';
$images_html = '';
$logo_alt = get_bloginfo( 'name' );
if ( us_get_option( 'logo_type', 'text' ) == 'text' ) {
	$class_name .= ' with_title';
} else {
	// Logo type => option name
	$images_config = array(
		'default' => 'logo_image',
		'transparent' => 'logo_image_transparent',
	);
	global $usof_options;
	foreach ( $images_config as $logo_type => $option_name ) {
		if ( ! ( $logo = us_get_option( $option_name ) ) ) {
			continue;
		}
		if ( ! empty( $logo ) AND $logo_type != 'default' ) {
			$class_name = ' with_' . $logo_type;
		}
		$img = usof_get_image_src( $logo );
		if ( $img ) {
			$images_html .= '<img class="for_' . $logo_type . '" src="' . esc_url( $img[0] ) . '"';
			if ( ! empty( $img[1] ) AND ! empty( $img[2] ) ) {
				// Image sizes may be missing when logo is a direct URL
				$images_html .= ' width="' . $img[1] . '" height="' . $img[2] . '"';
			}
			$images_html .= ' alt="' . esc_attr( $logo_alt ) . '" />';
		}
	}
}
$home_url = function_exists( 'icl_get_home_url' ) ? icl_get_home_url() : esc_url( home_url( '/' ) );

$output = '<div class="w-logo ' . $class_name . '"><a class="w-logo-link" href="' . $home_url . '">';
if ( us_get_option( 'logo_type', 'text' ) == 'img' ) {
	$output .= '<span class="w-logo-img">' . $images_html . '</span>';
} else {
	$logo_text = us_get_option( 'logo_text' ) ? us_get_option( 'logo_text' ) : $logo_alt;
	$output .= '<span class="w-logo-title">' . $logo_text . '</span>';
}
$output .= '</a></div>';

echo $output;


Скинул код для написания скрипта по конкретному примеру. Буду очень благодарен за ваши варианты!
  • Вопрос задан
  • 695 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
iiiBird
@iiiBird
Пока ты спишь - твой конкурент совершенствуется
вот подробный урок по wp убиранию циклических ссылок 9seo.ru/kak-udalit-ciklicheskie-ssylki
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ggdev
@ggdev
Joomla
$app = JFactory::getApplication();
$menu = $app->getMenu();
$isFront = $menu->getActive() == $menu->getDefault();
if ($isFront ) {
    echo 'Front page...';
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы