Накидайте актуальные CMS без БД - Страница 5 - Форум об интернет-маркетинге
Этот сайт существует на доходы от рекламы.
Пожалуйста, выключите AdBlock.
Вернуться   Форум об интернет-маркетинге > >
Ответ
 
Опции темы
Старый 18.01.2018, 15:49   #41
roman1981
Дипломник
 
Регистрация: 20.04.2017
Сообщений: 79
Репутация: 937

По умолчанию Re: Накидайте актуальные CMS без БД

Цитата:
Сообщение от NothingMatters Посмотреть сообщение
Но если очень хочется набираться плохого опыта, то стоит хотя бы немного переделать. Меню выводи через foreach:
Код:
// Во внешнем файле задается $current_page = 'index', $current_page = 'contact', etc...

$menu = [
    'index' => ['href'=> '/', 'title' => 'Home page'],
    'about' => ['href'=> '/about.php', 'title' => 'About'],
    'contacts' => ['href'=> '/contact.php', 'title' => 'Contacts'],
    // ...
];

<ul>
        <?php foreach($menu as $page => $item):?>
        <li class="<?=($current_page === $page) ? 'active' : '';?>"><a href="<?=$item['href'];?>"><?=$item['title'];?></a>
        <?php endforeach;?>
</ul>
Скажите, пожалуйста, а если я в своём варианте буду вместо разных переменных использовать одну, проблем не будет? Вот правда, не могу понять вашу фразу насчёт проблем с сайтом в дальнейшем.

Вот, такой код:

PHP код:
<?php 
     
if($current_page == "index")  { 
?> 
<ul> 
    <li class="active"><a href="/index.php">index</a></li> 
    <li><a href="/about.php">about</a></li> 
    <li><a href="/contacts.php">contacts</a></li> 
    <li><a href="/formula.php">formula</a></li> 
    <li><a href="/goods.php">goods</a></li> 
    <li><a href="/love.php">love</a></li> 
    <li><a href="/addition.php">addition</a></li> 
    <li><a href="/end.php">end</a></li> 
</ul> 
<?php 
    
}  elseif($current_page == "about")  { 
?> 
<ul> 
    <li><a href="/index.php">index</a></li> 
    <li class="active"><a href="/about.php">about</a></li> 
    <li><a href="/contacts.php">contacts</a></li> 
    <li><a href="/formula.php">formula</a></li> 
    <li><a href="/goods.php">goods</a></li> 
    <li><a href="/love.php">love</a></li> 
    <li><a href="/addition.php">addition</a></li> 
    <li><a href="/end.php">end</a></li> 
</ul> 
<?php 
    
}  elseif($current_page == "contacts")  { 
?> 
<ul> 
    <li><a href="/index.php">index</a></li> 
    <li><a href="/about.php">about</a></li> 
    <li class="active"><a href="/contacts.php">contacts</a></li> 
    <li><a href="/formula.php">formula</a></li> 
    <li><a href="/goods.php">goods</a></li> 
    <li><a href="/love.php">love</a></li> 
    <li><a href="/addition.php">addition</a></li> 
    <li><a href="/end.php">end</a></li> 
</ul> 
..... 
..... 
<?php 
    

?>
В самом сайте, например, в страничке "index.php" или "about.php" я подключаю вышеизложенный файл "navigation.inc.php" таким вот образом:

PHP код:
В документе "index.php" : 
.... 
<?php  
    $current_page 
"index"
    include 
"./included/menu.inc.php"
?> 
В документе "about.php" : 
.... 
<?php  
    $current_page 
"about"
    include 
"./included/menu.inc.php";

Последний раз редактировалось roman1981; 18.01.2018 в 16:07..
roman1981 вне форума   Ответить с цитированием

Реклама
Старый 18.01.2018, 15:57   #42
Дикий пионер
Академик
 
Регистрация: 23.11.2009
Сообщений: 1,732
Репутация: 257453

По умолчанию Re: Накидайте актуальные CMS без БД

Цитата:
Сообщение от _SP_ Посмотреть сообщение
Сайты безусловно примитивные, интернет-магазины там всякие итд итп.
У вас магазины без поиска, фильтров, регистрации пользователей? Или вы эти странички тоже в статику генерируете?

Если вы сам себе заказчик - то понятно, а если кому-то разрабатываете, то много ли найдется специалистов поддерживать это если вас, ттт, автобус собьет, например. bus factor т.е.
Дикий пионер вне форума   Ответить с цитированием
Сказали спасибо:
Старый 18.01.2018, 16:05   #43
NothingMatters
Кандидат наук
 
Аватар для NothingMatters
 
Регистрация: 12.06.2017
Сообщений: 268
Репутация: 37313

По умолчанию Re: Накидайте актуальные CMS без БД

Цитата:
Сообщение от roman1981 Посмотреть сообщение
Скажите, пожалуйста, а если я в своём варианте буду вместо разных переменных использовать одну, проблем не будет? Вот правда, не могу понять вашу фразу насчёт проблем с сайтом в дальнейшем.
Зачем делать дублирование, когда я показал как правильно это сделать?
Сделайте как я показал, и не будет проблем.
Глобальные переменные, которые устанавливаются в различных файлах - вызывают проблемы при расширении\поддержке кода. Наступает момент когда непонятно почему переменная $var равняется 'one', а не 'two', так как где-то, в одном из подключенных файлов, ее что-то перезаписало.
NothingMatters вне форума   Ответить с цитированием
Старый 18.01.2018, 16:13   #44
_SP_
Академик
 
Регистрация: 24.03.2008
Адрес: MSK
Сообщений: 2,776
Репутация: 270928

По умолчанию Re: Накидайте актуальные CMS без БД

Цитата:
Сообщение от Дикий пионер Посмотреть сообщение
У вас магазины без поиска, фильтров, регистрации пользователей? Или вы эти странички тоже в статику генерируете?
С регистрацией увы приходится некую динамику обеспечивать, хотя от неё в ряде случаев удалось отказаться.
Анализ показывает, что часто она не нужна нафиг никому (регистрация сама). В общем-то можно было бы сделать
и на статике, в чём проблема-то ? Думается даже переделаю. Что такого динамического в кабинете пользователя ?

Поиск и фильтры отлично работают на клиентской части. Если товара не очень много, сотни позиций.
Для десятков-сотен тысяч да - пришлось бы что-то делать на сервере.

Однако ВСЁ остальное прекрасно будет чувствовать себя в виде статики и при 100 товарах и при 100.000.


Цитата:
Сообщение от Дикий пионер Посмотреть сообщение
Если вы сам себе заказчик - то понятно, а если кому-то разрабатываете, то много ли найдется специалистов поддерживать это если вас, ттт, автобус собьет, например. bus factor т.е.
Много.
Фишка в таких самописах в том, что они делают только то, что нужно .
Специалист любой сможет поддерживать. Специалист я сказал .
По факту не вижу проблемы с подержкой
10.000 байт css стилей
50.000 байт JS сценариев
50.000 байт php кода
30.000 байт шаблонов
Это неминифицированных.
По крайней мере то, что год не трогал, через год возникло желание слегка отрефакторить... и ничего, как по маслу.
Года два назад скрепя сердцем вставил какой-то могучий "готовый" слайдер для первой страницы... 80кб на JS.
Оказалось, что достаточно 1382 байт для его замены .
_SP_ вне форума   Ответить с цитированием
Старый 18.01.2018, 16:15   #45
roman1981
Дипломник
 
Регистрация: 20.04.2017
Сообщений: 79
Репутация: 937

По умолчанию Re: Накидайте актуальные CMS без БД

Цитата:
Сообщение от NothingMatters Посмотреть сообщение
Зачем делать дублирование, когда я показал как правильно это сделать?
Сделайте как я показал, и не будет проблем.
Глобальные переменные, которые устанавливаются в различных файлах - вызывают проблемы при расширении\поддержке кода. Наступает момент когда непонятно почему переменная $var равняется 'one', а не 'two', так как где-то, в одном из подключенных файлов, ее что-то перезаписало.
Ясно, спасибо за предельно точный ответ!

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

Ещё раз благодарен! Поступлю, как вы указали. Действительно, ваш вариант кода более красивый и элегантный. У меня, увы, ещё мало знаний ((((
roman1981 вне форума   Ответить с цитированием
Старый 18.01.2018, 16:19   #46
Дикий пионер
Академик
 
Регистрация: 23.11.2009
Сообщений: 1,732
Репутация: 257453

По умолчанию Re: Накидайте актуальные CMS без БД

Цитата:
Сообщение от _SP_ Посмотреть сообщение
Поиск и фильтры отлично работают на клиентской части. Если товара не очень много, сотни позиций.
По скольким параметрам у вас фильтры есть? Опечатки обрабатываете? Если я буду искать "красная куртка" текстом, ваш поиск наёдет мне куртки, у которых признак цвет будет красный?
Вы считали, сколько денег вы сэкономили заказчикам на серверах и сколько он лишнего заплатил за реализацию самописов вместо настройки готовых решений? Если да - хотелось бы порядок цифр увидеть (за год, например)
Дикий пионер вне форума   Ответить с цитированием
Старый 18.01.2018, 16:28   #47
_SP_
Академик
 
Регистрация: 24.03.2008
Адрес: MSK
Сообщений: 2,776
Репутация: 270928

По умолчанию Re: Накидайте актуальные CMS без БД

Цитата:
Сообщение от Дикий пионер Посмотреть сообщение
По скольким параметрам у вас фильтры есть? Опечатки обрабатываете? Если я буду искать "красная куртка" текстом, ваш поиск наёдет мне куртки, у которых признак цвет будет красный?
Не стояла задача. Проблем сделать не вижу. Спасибо, кстати, за идею.
А, о... найдет. Дело в том, что в моей схеме "Куртка адидас женская 30го размера" будет так и называться
"Куртка адидас женская 30го размера - красная" "Куртка адидас женская 30го размера - синяя", т.е. в товары
добавляются всё признаки.
И при попытке набрать "кра" вы увидете в выпадающем списке подсказок

"Куртка адидас женская 30го размера - красная"
"Красные огурцы"

итд итп
Вот словоформы нет, не обрабатываю. Но тоже можно сделать в принципе.
Пока вводимое в эти поля (оно всё-таки посылается на сервер для статистики) не показывает проблем.
Не успевают набрать - выбирают из подсказок.

Подсказки, разумеется, генерируются налету клиентом, список всех товаров у него есть.
Проблем с количеством параметров при небольшом (сотни-тысячи) количестве товаров не вижу,
хранится в локалсторейдже, достается асинхронно один раз, чекается версия итп.
Это еще и экономней по траффику выйдет, чем сервер дергать каждый раз до довольно больших выборок,
сейчас там json, но для больших яб зиповал по пути, раз в 10 поди сожмется.
Параметрический поиск не везде переделан, врать не буду, но это всё "наследия" исключительно.
Надо бы доделать.


Цитата:
Сообщение от Дикий пионер Посмотреть сообщение
Вы считали, сколько денег вы сэкономили заказчикам на серверах и сколько он лишнего заплатил за реализацию самописов вместо настройки готовых решений? Если да - хотелось бы порядок цифр увидеть (за год, например)
Это весьма затруднительно.
Дело в том, что настройка готовых решений "на выходе" как правило не дает даже близко годного результата.
Разумеется "размороженная" еда гораздо дешевле приготовленной лично для вас.
Не знаю нашел бы я в себе силы оплатить всё это...
Знаю только, что после "настройки готовых решений" я всё-таки в какой-то момент психанул, выкинул всю
сделанную работу и написал только нужное.
Разумеется - это роскошь. Могу себе позволить. Но как люди работают с "готовым" я честно не понимаю.
У меня глаз дергается, когда я вижу что выдает им "готовое" в виде страниц.
Пока пользовался, неоднократно "попадал" в "интересные положения".
(люблю рассказывать, как один довольно популярный ИМ будь он проклят сообщал моему клиенту "пошел нахрен", на попытку оставить
заказ с доставкой на 40000руб что-ли... прям стояла проверка, у кого >40000 - тому ошибку с дебильным содержанием, прям в поставке такой получил, прям модуль с такой "заботой" .)
_SP_ вне форума   Ответить с цитированием
Старый 18.01.2018, 16:39   #48
Дикий пионер
Академик
 
Регистрация: 23.11.2009
Сообщений: 1,732
Репутация: 257453

По умолчанию Re: Накидайте актуальные CMS без БД

А количество товара вы где храните? Ну т.е. вот куртку красную у вас купили последнюю, другому посетителю её ж не надо показывать уже как "в наличии"?
А рекомендуемые товары для посетителя?
По-моему это вполне себе бизнес-задачи, которые реально полезны магазину.
А отзыв, допустим, оставили на товар, у вас для кадого товара отдельная папочка и потом вы оттуда готовые куски html c отзывами собираете?

Я тут столько вопросов задаю, потому что как такие вещи сделать с БД для меня понятно, а вот на тех же файлах - это какой-то не сильно на данный момент оправданный геморой, поэтому и интересуюсь у активного сторонника - может не всё там и проблематично?
Дикий пионер вне форума   Ответить с цитированием
Старый 18.01.2018, 16:47   #49
_SP_
Академик
 
Регистрация: 24.03.2008
Адрес: MSK
Сообщений: 2,776
Репутация: 270928

По умолчанию Re: Накидайте актуальные CMS без БД

Цитата:
Сообщение от Дикий пионер Посмотреть сообщение
А количество товара вы где храните? Ну т.е. вот куртку красную у вас купили последнюю, другому посетителю её ж не надо показывать уже как "в наличии"?
А нигде не храню.
Если человеку нужна красная, то пусть оформит заказ, а ?
Нет, свинство, но я ему(не я конечно - менеджер) предложу сам "красную найк" вместо "красной адидас", чего его отшивать-то сразу.
На самом деле у меня ситуация такая, что люди согласны подождать.

Цитата:
Сообщение от Дикий пионер Посмотреть сообщение
А рекомендуемые товары для посетителя?
Это что такое ?
Оно как-то от посетителя зависит, да ? (шучу, но отчасти)
Слышал амазон так делает, зачем ему понятно, но как это может работать для небольшого магазина-то ?
Алгоритм какой ?

В некоторых нишах еще можно... скажем "вы тут месяц назад покупали подгузники - может еще надо ?",
но в моём случае предложить нечего.

Для магазина курток что вы собрались юзеру толкать ?

Цитата:
Сообщение от Дикий пионер Посмотреть сообщение
По-моему это вполне себе бизнес-задачи, которые реально полезны магазину.
Показать "нет товара" = избавиться от клиента ?
Второе полезно не всем, мне не полезно, если бы было надо - вынимал бы микроскопическим аяксом асинхронно.
Вся страница статика - этот блок "потом" приезжает и вставляется.

Цитата:
Сообщение от Дикий пионер Посмотреть сообщение
А отзыв, допустим, оставили на товар, у вас для кадого товара отдельная папочка и потом вы оттуда готовые куски html c отзывами собираете?
Не держу у себя локальных отзывов, ибо не считаю полезным и честным инструментом.
Где есть - это отзывы от фейсбука-вконтакте, они берутся оттуда прям.
Если держать локальные, то яб добавлял их в текст страницы прям сразу, при генерации страницы с товаром.
Зачем ждать, пока кто-то напишет нужное ?
В крайнем случае отдельно складывал-бы, как вы написали, тоже нет ничего сложного абсолютно.
_SP_ вне форума   Ответить с цитированием
Старый 18.01.2018, 16:54   #50
Дикий пионер
Академик
 
Регистрация: 23.11.2009
Сообщений: 1,732
Репутация: 257453

По умолчанию Re: Накидайте актуальные CMS без БД

Я вас понял, спасибо за ответы.
Дикий пионер вне форума   Ответить с цитированием
Ответ




Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Текущее время: 05:18. Часовой пояс GMT +3.

Регистрация Справка Календарь Поддержка Все разделы прочитаны