Jump to content
Sign in to follow this  
o9uH

допил страницы товара, вывод дат самовывоза, доставки

Recommended Posts

Парни программеры, нужна помощь в создании кода на PHP, который будет выводить текст

Самовывоз: сегодня, бесплатно
Авто-курьер: завтра, 400 руб

 

По условиям: 

В "Самовывоз" пишется "сегодня" при условии, что сегодня рабочий будний день, не выходной и не праздник, в противном случае ставится дата ближайшего рабочего дня

В "Авто-курьер" пишется "завтра" при условии, что сегодня рабочий будний день, не выходной и не праздник, в противном случае ставится дата ближайшего рабочего дня

 

В случае праздничных дней, я понимаю, что трудно угадать когда у нас официальные праздники и переносы будут, поэтому этот момент можно опустить или как-нить обыграть по иному.

Думаю, что рабочий код просто вставлю в catalog\view\theme\***\template\product\product.tpl, сейчас я там в html нарисовал вывод этих опций, как модуль оформлять особой необходимости нет.

 

Пример хотелки тут: http://id77.ru/index.php?route=product/product&path=237&product_id=1987

По предложениям и по оплате в личку.

Share this post


Link to post
Share on other sites

Так оно там не меняется , там одинаково что в праздники что в будние текст один и тот же 

 

Самовывоз: Пн-Пт, бесплатно
Авто-курьер: завтра, 400 руб

Share this post


Link to post
Share on other sites

Где вы хотите задавать данные для этих условий?

Share this post


Link to post
Share on other sites

Dagger, я же написал условия, непонятно?

Share this post


Link to post
Share on other sites

Designer, задавать необязательно, можно просто через echo date("d/m/Y") с условиями описаными выше выводить в product.tpl

Share this post


Link to post
Share on other sites

Dagger, я же написал условия, непонятно?

Прежде чем отвечать, прочитайте внимательно вопрос! Вас не спрашивают об условии выводе данных, а интересуются, где для Вас лучше назначать данные о Самовывоз и Авто-курьер

Share this post


Link to post
Share on other sites

Designer, задавать необязательно, можно просто через echo date("d/m/Y") с условиями описаными выше выводить в product.tpl

т.е. суббота и воскресенье будет первый рабочий день недели.

По поводу праздничных дней. Нет такой функции, которая автоматический определить праздничный день или нет, можно вычислять только субботу или воскресенье. Если же задавать все праздничные дни, то нужно будет создать массив или же поле в базе данных и загнать в него все праздничные дни и уже применять их в условии вывода данных..

Share this post


Link to post
Share on other sites
В "Самовывоз" пишется "сегодня" при условии, что сегодня рабочий будний день, не выходной и не праздник, в противном случае ставится дата ближайшего рабочего дня

 

Интересное предложение....что для еврея - праздник...то для русского рабочий день...а для китайца - Новый год  :-D

Share this post


Link to post
Share on other sites
 

Прежде чем отвечать, прочитайте внимательно вопрос! Вас не спрашивают об условии выводе данных, а интересуются, где для Вас лучше назначать данные о Самовывоз и Авто-курьер

Да можно и не назначать, достаточно просто кода, который внедряется в шаблон

 

т.е. суббота и воскресенье будет первый рабочий день недели.

По поводу праздничных дней. Нет такой функции, которая автоматический определить праздничный день или нет, можно вычислять только субботу или воскресенье. Если же задавать все праздничные дни, то нужно будет создать массив или же поле в базе данных и загнать в него все праздничные дни и уже применять их в условии вывода данных..

Праздники можно пропустить или если назначать данные, то в админке сделать возможность установки праздничной даты.

Share this post


Link to post
Share on other sites

Можно поговнокидить немного, я так понимаю вы что-то вроде это добиваетесь?

Получается код будет проверять дни недели и выводить нужную инфу, вместо понедельника можно дату рабочего дня прикрутить

Ну и в админке сделать кнопку праздник и добавить поля для даты когда работаете. Если делать это на автомате, то с учетом переноса праздников, получится каша, хотя и это можно реализовать

<?php
$sunday  = mktime(0, 0, 0, date("m"), date("d")+ 7 - date("N"), date("Y")); //вс
$saturday  = mktime(0, 0, 0, date("m"), date("d")+ 6 - date("N"), date("Y")); //сб
$friday  = mktime(0, 0, 0, date("m"), date("d")+ 5 - date("N"), date("Y")); //пт
$today  = mktime(0, 0, 0, date("m"), date("d"), date("Y")); //сегодня

if($today != $sunday && $today != $saturday && $today != $friday): //если сегодня пн, вт, ср, чт
    echo "Самовывоз: сегодня, бесплатно<br />Авто-курьер: завтра, 400 руб";
elseif($today == $friday): //если пт
    echo "Самовывоз: сегодня, бесплатно<br />Авто-курьер: в понедельник, 400 руб";
elseif($today == $sunday): //если сб
    echo "Самовывоз: в понедельник, бесплатно<br />Авто-курьер: в понедельник, 400 руб";
elseif($today == $saturday): //если вс
    echo "Самовывоз: в понедельник, бесплатно<br />Авто-курьер: в понедельник, 400 руб";
endif;

?>

Share this post


Link to post
Share on other sites

Может для порядкового дня недели использовать (w) - от 0 (воскресенье) до 6 (суббота)

Share this post


Link to post
Share on other sites

Я уже запилил все немного другой схемой

Share this post


Link to post
Share on other sites

Ага, спасибо polarnik'у, 1,5 часа времени приемлемый ценник и результат в вкмод-файле.

Перенос дат доставки на праздники опционально ручками в админке задается.

Вобщем все, о чем я мечтал :)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By Shreyder
      Добрый день друзья!
       
      Столкнулись с таким замечанием-проблемой: страница товара подгружается крайне медленно (дольше 5 сек!), если тег товара становится популярным, т.е. часто используемым.
      Проверено, что причиной является именно тег, так как при его замене на менее популярный скорость страницы вырастает в разы! 

      1) Для проверки можно зайти на сайт, пример: https://yetipharm.com/johanniskraut_oel_nachtcreme_3496332_preis
      2) Предполагаем, что некий алгоритм прежде чем подгрузить страницу товара, проходится по всему списку "схожих по тегу" товаров, что занимает критично много времени. 
       
      Может можно задать определенный лимит данному алгоритму? Или ограничить прохождение схожих товаров только определенной Sort Order, например "Sort Order: 1"?
       
      Кто виноват и что делать? 

      Друзья, буду благодарен за любую информацию по данной теме!
       
       
       
       
      С уважением,
      Дмитирй
    • By VladislavGridasov
      Здравствуйте! Возникла необходимость поменять наименование товара. Обновил страницу — везде поменялся, кроме заголовка H1 на странице товара. Кеш чистил, модификаторы обновлял — не помогло. Что я упустил?
    • By VladislavGridasov
      Здравствуйте! Есть html блок: иконка и фраза "Бесплатная доставка". Он будет размещен в файле product.tpl после блока "Доступность". Подскажите, пожалуйста, как сделать так, чтобы мой блок отображался только на определенных страницах товара (например, с ценой товара свыше 2000 руб)? 
       
    • By Vadya25
      Здравствуйте. Подскажите хочу добавить картинку в карточку товара, но не всем товарам а одному определенному. Как реализовать это или это вообще не возможно?
    • By gleb22
      Здравствуйте! присутствует лишний элемент (>) на странице товара, из за него все съезжает, от шаблона это не зависит, ставил стандарт-все равно висит, куда копать подскажите пожалуйста
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.