FAQ по созданию кнопки в главном меню

Автор Mr. Anviss, 10 октября 2008, 20:20:33

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

jetter

Парни ,подскажите а на RS2 этот рецепт вставки ссылки на главную сайта должен срабатывать? А то я бьюсь и ни че не получается.

Mavn

работает!! кэш чисти после правки
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

grom117

Извините, видимо тупой я. У меня стоит SMF версия 1.1.11 темов накачал много, и лишь в трех темах есть кнопка ФОРУМ а в остальных которые нравятся нет ее, помогите пожалуйста чайнику. Как, в каой директории какой файл и что там надо прописать.
Заранее огромное спасибо за помощь, здесь все перечитал и не понял.

BIOHAZARD

index.template.php

// Show the menu up top. Something like [home] [help] [profile] [logout]...
function template_menu()
{

Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

grom117

Цитата: BIOHAZARD от 06 декабря 2009, 07:04:41
index.template.php

// Show the menu up top. Something like [home] [help] [profile] [logout]...
function template_menu()
{


Спасибо за попытку помочь, но вот прописал перегрузил форум а кнопки по прежнему нет
// Show the menu up top. Something like [home] [help] [profile] [logout] [Forum]...
function template_menu()
{

Mavn

Цитата: grom117 от 06 декабря 2009, 00:29:43
Извините, видимо тупой я. У меня стоит SMF версия 1.1.11 темов накачал много, и лишь в трех темах есть кнопка ФОРУМ а в остальных которые нравятся нет ее, помогите пожалуйста чайнику. Как, в каой директории какой файл и что там надо прописать.
Заранее огромное спасибо за помощь, здесь все перечитал и не понял.
читайте внимательно название раздела!! написано же SMF 2.0!
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

grom117

Цитата: Ares от 08 октября 2009, 18:11:30
Mavn
Что-то не очень получилось!!!
после добавить в index.russian-utf8.php
$txt['site'] = 'Сайт';

я так понимаю путь файла такой...Themes\default\language\index.russian-utf8.php
ниже вложу фото


Themes\movies07_11\language\ThemeStrings.english.php (один этот файл там)

grom117

Цитата: Mavn от 06 декабря 2009, 11:22:37
читайте внимательно название раздела!! написано же SMF 2.0!

Извините! А где про мою версию 1.1.11? Может подскажете
Спасибо!

Leon2000

а я вот к примеру хочу последней кнопку сделать? как быть?

Mavn

ну так поставь последней какие проблемы
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Leon2000

Да блин :) Есть проблемы ) в своем RC2 пункт 2 выполнить не могу, так как я там этих строк вообще не вижу :)

Leon2000

хотя в 4 бете делал, все на ура было

Drakonsa

Цитата: Leon2000 от 09 января 2010, 16:10:04
Да блин :) Есть проблемы ) в своем RC2 пункт 2 выполнить не могу, так как я там этих строк вообще не вижу :)
Значит должны быть аналогичные.

Mavn

SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Leon2000


Elegant


Zlo

Если нужна одна кнопка, то вам хватит мода  Custom Tab    http://custom.simplemachines.org/mods/index.php?mod=1402

supmener

В какие файлы смотреть, чтобы перекрасить кнопку "Уведомлять" в другой цвет?

0daliska

Цитата: supmener от 08 февраля 2010, 19:21:39
В какие файлы смотреть, чтобы перекрасить кнопку "Уведомлять" в другой цвет?
Themes/default/images/theme/menu_gfx.png
и
index.css
Уехала отдыхать. Сейчас без интернета до 1 августа. Приеду - выполню все обещания
® For members of Russian community (simplemachines.ru) only

supmener


maxtri

Цитата: Mr. Anviss от 30 января 2009, 18:26:31
Посмотри по коду как в теме babylon добавляется кнопка. Там кнопка реализована не как текстовый элемент, а как картинка. Кинь на мыло свою тему, помогу.
можете тоже помочь по этому же вопросу. не могу понять как кнопку добавить которая в виде графической картинки в нестандартной теме

maxtri

Цитата: Plazik от 24 февраля 2009, 12:31:54
Поскольку мне нужно было добавит 2 ссылки я сделал так:
в Sources/Subs.php после
// All the buttons we can possible want and then some, try pulling the final list of buttons from cache first.
if (($buttonData = cache_get_data('menu_buttons-' . implode('_', $user_info['groups']) . '-' . $user_info['language'], $cacheTime)) === null || time() - $cacheTime <= $modSettings['settings_updated'])
{
$buttons = array(
'home' => array(
'title' => $txt['home'],
'href' => $scripturl,
'show' => true,
'sub_buttons' => array(
),
),

Добавил:
'site' => array(
'title' => $txt['site'],
'href' => 'http://site.ru/',
'show' => true,
'sub_buttons' => array(
),
),
'gallery' => array(
'title' => $txt['gallery'],
'href' => 'http://gallery.site.ru/',
'show' => true,
'sub_buttons' => array(
),
),


В Themes/default/languages/index.russian-utf8.php добавил в конце:В Themes/default/languages/index.english.php добавил в конце:
$txt['site'] = 'Site';
$txt['gallery'] = 'Gallery';


Вроде все работает. Правильно я сделал?

я сделал так же. только кнопка появилась лишь в дефолтной теме. в моей же не появилась. к тому же в дефлотной названиекнопки кракозябрами..
мне надо в моей теме чтоб кнопкапоявилась и чтоб привязать к ней графическую картинку. как сделать?

0daliska

Цитата: maxtri от 17 апреля 2010, 06:56:52
я сделал так же. только кнопка появилась лишь в дефолтной теме. в моей же не появилась. к тому же в дефлотной названиекнопки кракозябрами..
Правьте файлы в Notepad++
Сохраняйте в правильной кодировке...

Цитата: maxtri от 17 апреля 2010, 06:56:52
мне надо в моей теме чтоб кнопкапоявилась и чтоб привязать к ней графическую картинку. как сделать?
GenericMenu.template.php - Вашей темы
Уехала отдыхать. Сейчас без интернета до 1 августа. Приеду - выполню все обещания
® For members of Russian community (simplemachines.ru) only

maxtri

Цитата: 0daliska от 17 апреля 2010, 07:14:03
Правьте файлы в Notepad++
Сохраняйте в правильной кодировке...
GenericMenu.template.php - Вашей темы
нет такого файла..
есть только
http://floomby.ru/content/jmzClAyyVU/
такие папки. неужели тема моя на несколько папок раскинулась.. я использую тему- Extreme

Mr. Anviss

Цитата: maxtri от 17 апреля 2010, 07:29:04
нет такого файла..
Odaliska написала для версии форума 2.0 RC3. Насколько я понял.

maxtri

Цитата: Mr. Anviss от 19 апреля 2010, 14:08:55
Odaliska написала для версии форума 2.0 RC3. Насколько я понял.
самое удивительное что у меня эта версия и стоит.. но графические кнопки пришлось размещать в шаблоне, который для версии 1.0 по-другому не отображается на форуме

Mr. Anviss

Если делаете все верно то все будет работать. Ставлю $10 что у меня получится.

maxtri

Цитата: Mr. Anviss от 19 апреля 2010, 17:51:49
Если делаете все верно то все будет работать. Ставлю $10 что у меня получится.
даю 10 баксов чтоб у вас получилось  :)

Mr. Anviss

как услышу хруст баксов так сразу и получится... :)

aH4oyC

Вопрос, для RC3 это работает? Просто я вставлял как описано и при загрузке форума он мне писал ошибку на файл Subs.php

BIOHAZARD

значит накосячили со вставкой
вообще в рц2 и рц3 отличий в этом плане нет
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

Bugo

Цитата: aH4oyC от 27 апреля 2010, 08:37:00
Вопрос, для RC3 это работает? Просто я вставлял как описано и при загрузке форума он мне писал ошибку на файл Subs.php
Продемонстрируйте тут, как именно, что именно и куда конкретно вставляли.

aH4oyC

после
Цитировать// All the buttons we can possible want and then some, try pulling the final list of buttons from cache first.
   if (($menu_buttons = cache_get_data('menu_buttons-' . implode('_', $user_info['groups']) . '-' . $user_info['language'], $cacheTime)) === null || time() - $cacheTime <= $modSettings['settings_updated'])
   {
      $buttons = array(
         'home' => array(
            'title' => $txt['home'],
            'href' => $scripturl,
            'show' => true,
            'sub_buttons' => array(
            ),
            'is_last' => $context['right_to_left'],
            // 'target' => '_blank',
         ),

Добавил
Цитироватьif (($buttonData = cache_get_data('menu_buttons-' . implode('_', $user_info['groups']) . '-' . $user_info['language'], $cacheTime)) === null || time() - $cacheTime <= $modSettings['settings_updated'])
{
//Добавляем новую кнопку на сайт
$buttons = array(
'site' => array(
'title' => 'На сайт',
'href' => $scripturl . '?action=site',
'href' => 'http://mysite.bbb',
'show' => true,
'sub_buttons' => array(
),
),
'home' => array(
'title' => $txt['home'],
'href' => $scripturl,
'show' => true,
'sub_buttons' => array(
),
),
потом
Цитировать

$current_action = 'home';
меняю на
Цитировать

$current_action = 'site';
ну а далее строко по инструкции
Цитировать4. Далее идем в файл index.php в корне форума и добавляем строку
'site' => array('GoToSite.php', 'gotosite'), после строки 'restoretopic' => array('RemoveTopic.php', 'RestoreTopic'),

5. Теперь создаем два файла GoToSite.php (в папке Sources) и GotoSite.template.php (в папке Themes/default)

Вот содержимое файла GoToSite.php
<?php
if (!defined('SMF'))

   

die('Hacking attempt...');
function gotosite()
{loadTemplate('GotoSite','template_main');
loadLanguage('Manual');
}
?>

Вот содержимое файла GotoSite.template.php
<?php
function template_main()
{echo "<h2>Здравствуй МИР!</h2>";}
?>
И мне пишет ошибку
ЦитироватьParse error: syntax error, unexpected T_IF, expecting ')' in ...................../forum/Sources/Subs.php  on line 3899

BIOHAZARD

со скобками напутали - не хватает как минимум одной

а вообще есть готовые моды для кнопок в меню и не надо мучаться
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

aH4oyC

он ругается на стоку №3899
в этой находится начала того что я вставлял
Цитироватьif (($buttonData = cache_get_data('menu_buttons-' . implode('_', $user_info['groups']) . '-' . $user_info['language'], $cacheTime)) === null || time() - $cacheTime <= $modSettings['settings_updated'])

BIOHAZARD

немного лишку вставили (это там и так уже есть)

а вообще лучше поставьте мод и не парьтесь. Я сам хоть и знаю пхп довольно хорошо, но в последнее время предпочитаю делать всё модами вместо правки кода руками
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

Mavn

а зачем 2 раза вставили

'href' => $scripturl . '?action=site',
'href' => 'http://mysite.bbb',
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

aH4oyC

Цитата: Mavn от 27 апреля 2010, 11:20:36
а зачем 2 раза вставили

'href' => $scripturl . '?action=site',
'href' => 'http://mysite.bbb',

на первой страничке кто-то написал что надо так ссылку на сайт указать, ну я и повелся :D
Цитироватьнемного лишку вставили (это там и так уже есть)

а вообще лучше поставьте мод и не парьтесь. Я сам хоть и знаю пхп довольно хорошо, но в последнее время предпочитаю делать всё модами вместо правки кода руками
Спасибо за помощь, не сразу заметил, что я не заменил те строки )

Vysotnik

#88
Цитата: BIOHAZARD от 27 апреля 2010, 11:14:35
немного лишку вставили (это там и так уже есть)

а вообще лучше поставьте мод и не парьтесь. Я сам хоть и знаю пхп довольно хорошо, но в последнее время предпочитаю делать всё модами вместо правки кода руками
Отличная идея  ^-^ , а какой мод посоветуете для первой ветки смф?

Цитата: Zlo от 26 января 2010, 20:28:30
Если нужна одна кнопка, то вам хватит мода  Custom Tab    http://custom.simplemachines.org/mods/index.php?mod=1402
Попробовал этот мод. Проблема с появлением нужной кнопки в теме иной, чем "по умолчанию". - Где добавтить код?

Azura

У меня СМФ 1.1.11, но в файле СУБС НЕТУ никаких кнопок... Только вот это:
// Creates an image/text button
function create_button($name, $alt, $label = '', $custom = '')
{
global $settings, $txt, $context;

if (!$settings['use_image_buttons'])
return $txt[$alt];
elseif (!empty($settings['use_buttons']))
return '<img src="' . $settings['images_url'] . '/buttons/' . $name . '" alt="' . $txt[$alt] . '" ' . $custom . ' />' . ($label != '' ? '<b>' . $txt[$label] . '</b>' : '');
else
return '<img src="' . $settings['images_url'] . '/' . $context['user']['language'] . '/' . $name . '" alt="' . $txt[$alt] . '" ' . $custom . ' />';
}

Подскажите, что мне делать, как кнопки-то добавить? :)

0daliska

Цитата: Azura от 01 июня 2010, 00:44:44
У меня СМФ 1.1.11, но в файле СУБС НЕТУ никаких кнопок... Только вот это:
// Creates an image/text button
function create_button($name, $alt, $label = '', $custom = '')
{
global $settings, $txt, $context;

if (!$settings['use_image_buttons'])
return $txt[$alt];
elseif (!empty($settings['use_buttons']))
return '<img src="' . $settings['images_url'] . '/buttons/' . $name . '" alt="' . $txt[$alt] . '" ' . $custom . ' />' . ($label != '' ? '<b>' . $txt[$label] . '</b>' : '');
else
return '<img src="' . $settings['images_url'] . '/' . $context['user']['language'] . '/' . $name . '" alt="' . $txt[$alt] . '" ' . $custom . ' />';
}

Подскажите, что мне делать, как кнопки-то добавить? :)
Воспользоваться поиском? А еще проще войти в раздел для единицы в темы оформления (http://www.simplemachines.ru/index.php?board=14.0) и прочитать первый прикрепленный топик, имеющий в своем названии Ваш вопрос!
Уехала отдыхать. Сейчас без интернета до 1 августа. Приеду - выполню все обещания
® For members of Russian community (simplemachines.ru) only

Azura

#91
Только что там была, искала по всему интернету (я вообще редко пишу вопросы, только если долго не нахожу ответы)... Нету там описаний для моего случая... :( Темплат дефаулта рыла, субс - рыла... Нету ничего похожего... :(

Таки обнаружила тут обсуждение: http://www.simplemachines.ru/index.php?topic=352.0
Здесь приведены кнопки меню для SMF 1.1.11 :)
Спасибо мне... х)

BIOHAZARD

Цитата: Azura от 01 июня 2010, 00:44:44
У меня СМФ 1.1.11, но в файле СУБС НЕТУ никаких кнопок...
этот раздел форума (Simple Machines Russian Community » Поддержка SMF 2.0) только про smf 2.0, кнопки для первой версии обсуждались отдельно - смотрите в поиск
если коротко, то они в index.template.php
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

tol82

#93
А что в моем случае посоветуете.
Вместо логотипа вставил картинку. Все в норме. А кнопку "На сайт" сделал графическую и хочу вставить под названием форума. А она стает между названием и логотипом. Как ее прописать нормально, как на рисунке во вложение?

В index.template.php код виглядит так

echo !empty($settings['forum_width']) ? '
<div id="wrapper" style="width: ' . $settings['forum_width'] . '">' : '', '
<div id="header"><div class="frame">
<div id="top_section">
<h1 class="forumtitle">
<a href="', $scripturl, '">', empty($context['header_logo_url_html_safe']) ? $context['forum_name'] : '<img src="' . $context['header_logo_url_html_safe'] . '" alt="' . $context['forum_name'] . '" />', '</a>
</h1>';

// the upshrink image, right-floated


echo '
<img id="upshrink" src="', $settings['images_url'], '/upshrink.png" alt="*" title="', $txt['upshrink_description'], '" style="display: none;" />';
         
        Вставил этот код////// 
echo '
', empty($settings['site_slogan']) ? '<img id="smflogo2" class="align_left" src="' . $settings['images_url'] . '/vernasait.jpg" alt="Наш форум" title="Наш форум" />' : '<div id="siteslogan" class="align_left">' . $settings['site_slogan'] . '</div>';
все/////////////////////////////////////////////////


echo '
', empty($settings['site_slogan']) ? '<img id="smflogo" src="' . $settings['images_url'] . '/smflogo.png" alt="Наша школа" title="Наша школа" />' : '<div id="siteslogan" class="align_right">' . $settings['site_slogan'] . '</div>', '
</div>
<div id="upper_section" class="middletext"', empty($options['collapse_header']) ? '' : ' style="display: none;"', '>
<div class="user">';

То что  "Вставил этот код//////..."   я вставил для кнопки. А как сделать чтоб она под "Наш форум" как на рисунке была?

tol82

#94
Решил сам laugh, день не на смарку. Все вышло как хотел. Сделал простым HTMLом. Если кому надо, оставляю код с решением
В index.template.php:
echo !empty($settings['forum_width']) ? '
<div id="wrapper" style="width: ' . $settings['forum_width'] . '">' : '', '
<div id="header"><div class="frame">
<div id="top_section">

<h1 class="forumtitle">
<a href="', $scripturl, '">', empty($context['header_logo_url_html_safe']) ? $context['forum_name'] : '<img src="' . $context['header_logo_url_html_safe'] . '" alt="' . $context['forum_name'] . '" />', '</a>
Вот здесь////////
<br><a href="http://localhost/nashaskola/index.php"><img id="smflogo2" class="align_left" src="Themes/default/images/vernasait.png" alt="Наша школа" title="Наша школа" ></a>
все///////
</h1>';

// the upshrink image, right-floated


echo '
<img id="upshrink" src="', $settings['images_url'], '/upshrink.png" alt="*" title="', $txt['upshrink_description'], '" style="display: none;" />';



echo '
', empty($settings['site_slogan']) ? '<img id="smflogo" src="' . $settings['images_url'] . '/smflogo.png" alt="Наша школа" title="Наша школа" />' : '<div id="siteslogan" class="align_right">' . $settings['site_slogan'] . '</div>', '

</div>


Еще бы сделать мигающую кнопку при наведении. В CSS надо прописывать или сдесь в коде?  ??? Может кто знает, а то опять буду куверять пол дня. Всем кто смотрел спасибо!

Albertus

tol82

Поставьте кто нибудь за меня плюсик  tol82 за развернутое решение проблемы, а то по ходу у меня не достаточно кармы, или я не могу найти где ставят плюс.

Плюса пожалуй и мало за такое простое и гибкое решение

Awilum

Albertus
ЦитироватьПоставьте кто нибудь за меня плюсик  tol82 за развернутое решение проблемы, а то по ходу у меня не достаточно кармы, или я не могу найти где ставят плюс.

ЦитироватьСообщений: 6
Карма: +0/-0
[прибавить] [отнять

tol82

Спасибо Albertus за благие намериния.

Awilum, я тоже не вижу этих кнопок у других. Может действительно кармы не хватает?

Bugo


Mavn

10+ сообщений нужно иметь для того чтобы изменять карму
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.