Перейти к содержимому

Сервис обмена электронных валют

Партнерская программа Kredov

Как поменять шапку

#1 objectfine

objectfine
  • Пользователь
  • 6 сообщений
  • Репутация: 0
0

Отправлено 14 Март 2013 - 21:16

Подскажите кто знает, в wordpress есть тема.... на ней сделал сайт..надо чтобы в шапке постоянно менялась картинка - при переходе на другую страницу..как это сделать?
Вот код header.php

<?php
/**
* The Header for our theme.
*
* Displays all of the <head> section and everything up till <div id="main">
*
* @package landscape
* @since landscape 1.0
*/
?><!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>" />
<meta name="viewport" conlandscapet="width=device-width" />
<title>Отделочные работы, Сантехника, Утепление, Гидроизоляция, Сварочные работы, Трубопровод, Квартира под ключ</title>
<link rel="profile" href="http://gmpg.org/xfn/11" />
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" />
<?php wp_head(); ?>
</head>
<div id="page" class="hfeed site">
<?php do_action( 'before' ); ?>
<header id="masthead" class="site-header" role="banner">
  <nav role="navigation" class="site-navigation main-navigation">
   <h1 class="assistive-text"><?php _e( 'Menu', 'landscape' ); ?></h1>
   <div class="assistive-text skip-link"><a href="#conlandscapet" title="<?php esc_attr_e( 'Skip to conlandscapet', 'landscape' ); ?>"><?php _e( 'Skip to conlandscapet', 'landscape' ); ?></a></div>
<body <?php body_class(); ?>>

   <?php wp_nav_menu( array( 'theme_location' => 'primary' ) ); ?>
  </nav><!-- .site-navigation .main-navigation -->
  <hgroup>
   <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
   <h2 class="site-description"><?php bloginfo( 'description' ); ?></h2>
  </hgroup>
</header><!-- #masthead .site-header -->
<div id="main" class="site-main">

 

 

  • 0

#2 yury

yury
  • Пользователь
  • 629 сообщений
  • Репутация: 176

Отправлено 15 Март 2013 - 05:35

надо чтобы в шапке постоянно менялась картинка - при переходе на другую страницу..как это сделать?

Это несколько не тот раздел форума, вам, наверное, надо в раздел CMS или PHP.
Попробуем ответить с точки зрения раздела PHP.

Решение зависит от того,
* где описана у вас картинка из шапки и
* по какому принципу вы хотите ее менять (случайно из заданного набора; к каждой странице своя определенная картинка; утром — один набор картинок, вечером — другой или еще как-то).

Чтобы понять, где описана картинка из шапки, покажите файл стилей (css).
(Скорее всего, нужно описание для идентификатора #masthead и/или класса .site-header)

Предположим, что картинка в шапке описывается фоновым изображением для идентификатора #masthead, а меняться картинка должна случайным образом из заданного набора из 10 картинок: 1.jpg, 2.jpg, ... 10.jpg
В таком случае можно изменение изображения в шапке можно реализовать, примерно, так:
в конце блока head (непосредственно перед закрывающим тегом </head>) помещаем код
<style type="text/css">
#masthead{
  background: url(path_to_images/<?php echo mt_rand(1,10); ?>.jpg) !important;
}
</style>
строку "path_to_images/" заменить на путь к папке с картинками 1.jpg, 2.jpg, ... 10.jpg
  • 0

#3 objectfine

objectfine
    Topic Starter
  • Пользователь
  • 6 сообщений
  • Репутация: 0

Отправлено 15 Март 2013 - 11:41

Вот еще раз. Это header

Спойлер



ОЧЕНБ надо ..прошу помощи!
  • 0

#4 yury

yury
  • Пользователь
  • 629 сообщений
  • Репутация: 176

Отправлено 15 Март 2013 - 13:03

Хм. Это уже какой-то другой сайт?

Впрочем, неважно. Код будет, примерно, тот же. И помещать его туда же (прямо перед закрывающим тегом </head>).

Только у вас в шапке по причине, о которой можно только догадываться, используются сразу два изображения: 'images/header.png' и 'images/header.jpg'
Потому можно заменять их оба (по-прежнему предполагаем, что нам нужно менять картинки случайным образом, что таких картинок по 10шт., называются они 1.png, ... 10.png и 1.jpg, ... 10.jpg и находятся они в папке images):
<?php $image_name = 'images/' . mt_rand(1,10); ?>
<style type="text/css">
.art-header:before{
  background-image: url(<?php echo $image_name, '.png'; ?>);
}
.art-header:after{
  background-image: url(<?php echo $image_name, '.jpg'; ?>);
}
</style>

  • 0

#5 objectfine

objectfine
    Topic Starter
  • Пользователь
  • 6 сообщений
  • Репутация: 0

Отправлено 15 Март 2013 - 16:22

Что -то не получается с этим кодом......выходит так....сзади картинка ,а впереди желтый квадрат перекрывает картинку. и всё
  • 0

#6 yury

yury
  • Пользователь
  • 629 сообщений
  • Репутация: 176

Отправлено 15 Март 2013 - 17:08

Ну не знаю. Сходу ничего желтого в вашем коде не замечается.

На всякий случай посмотрите и проверьте.
* Что у вас в картинках 'images/header.png' и 'images/header.jpg'?
* Создали ли вы картинки 1.png-10.png и 1.jpg-10.jpg? Положили ли их в правильное место?

Скорей всего до понедельника больше не смогу на форум заходить, так что может еще кто вам что подскажет.
  • 0

#7 objectfine

objectfine
    Topic Starter
  • Пользователь
  • 6 сообщений
  • Репутация: 0

Отправлено 15 Март 2013 - 17:25

Спасибо, что откликнулись. Буду ждать еще вариантов, с вашим еще вариантом помучаюсь...может что и получится

Этот желтый квадрат находится в файле header.png
  • 0

#8 Kirinka

Kirinka
  • Пользователь
  • 57 сообщений
  • Репутация: 12

Отправлено 15 Март 2013 - 20:54

ссылку на сайт можете дать, а то трудно представить, что у вас происходит или хотя бы размеры header.png и header.jpg
  • 0

#9 objectfine

objectfine
    Topic Starter
  • Пользователь
  • 6 сообщений
  • Репутация: 0

Отправлено 16 Март 2013 - 09:27

http://objectuq.bget.ru/
  • 0

#10 Kirinka

Kirinka
  • Пользователь
  • 57 сообщений
  • Репутация: 12

Отправлено 17 Март 2013 - 01:01

предложенный выше вариант работает. Единственное что, нужно объединить две картинки header.png и header.jpg в одну и удалить .art-header:after из css, а .art-header:before изменить на .art-header, то есть в результате у вас должно быть так:
.art-header
{
position: absolute;
display:block;
content:' ';
top: 0;
width:100%;
height: 312px;
background-image: url('header.jpg');
background-repeat: no-repeat;
background-position:top center;
}
Еще раз по порядку:
1) создайте в папке images отдельную папку для фонов(например:background), там должны лежать картинки с расширением .jpg и названием от 1 до 10: 1.jpg, 2.jpg и т.д.
2) в индексном файле между тегами <head></head> прописываете следующий код:
<style type="text/css">
.art-header
{
  background:url(путь_ к_ файлам/<?php echo mt_rand(1,10); ?>.jpg) !important;
}
</style>
, где путь_к_файлам будет выглядеть след.образом: images/background
  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Оформление форума – IPBSkins.ru