Vladimir

Vladimir

+51
Репутация
88
Рейтинг
#1 Как обратиться к переменной хука компонента? 26 июня 2021 в 15:20
Ситуация следующая, есть компонент, у этого компонента есть хук, там есть класс и функция, и вот в этой функции есть переменная, в которой есть текстовая информация, к примеру так

<?php
class onSupercomponentContentBeforeItem extends cmsAction {
public function run($data){
.....
$blabla = "Супер текст, от супер компонента!";
.....

вот путь компонента
system/controllers/supercomponent/hooks/content_before_item.php

Переменную $blabla я хочу вывести к примеру здесь default_item.tpl.php. Скажите пожалуйста, как обратиться к переменной $blabla хука компонента и вывести её?
#1 Формат в базе --- - 2 17 июня 2021 в 22:13
Ris, Спасибо!!!
#2 Формат в базе --- - 2 17 июня 2021 в 22:09
Ну да, массив, как получить первый элемент массива, как формат называется?
#1 Формат в базе --- - 2 17 июня 2021 в 21:42
Подскажите пожалуйста, в базе данных встречаются поля с таким содержимым
---
— 2
или
---
— 1
и.т.д.
Вот не могу вспомнить, как этот формат называется, какими функциями в php с ними работать. Вообще мне нужно просто из
---
— 2
получить
2
И всё, как это сделать!?
#3 Карта сайта со своими ссылками. 14 мая 2021 в 20:49
Спасибо! Приобретал ваш компонент и время от времени пользуюсь) Классная вещь!
Но там же страница попадает в карту сайта, если она есть в разделе "Страницы" и соответственно с изменённой ссылкой. А если добавляем страницу фильтра, не меняя ссылки, через раздел "Правила", то тогда эта страница не попадает в карту сайта, вроде как-то так…
#1 Карта сайта со своими ссылками. 8 мая 2021 в 15:48
Может кто-нибудь знает, как сделать карту сайту, куда можно добавлять свои ссылки сайта? Мне это нужно для добавления ссылок, которые генерирует фильтр.
#4 Яндекс. На многих страницах сайта отсутствуют или некорректно заполнены метатеги Description. 26 апреля 2021 в 18:41

1. Я бы не лазил в /system/core/ — совсем. При следующем обновлении у вас все слетит. В "ядре" делать нечего.
2. С "/" — все нормально.

@Evg
Всё равно яндекс не пропускает, не в "/" дело, вернул назад. Просто хотелось попробовать.

Вы можете установить Screaming Frog SEO и устранить ошибки.

@Evg
Да программа конечно интересная и полезная! Обнаружил что на многих страницах длина дескрипшн больше 155 или меньше 70 символов. Но есть и такие страницы, которые веб-мастер яндекс посчитал ошибочными, а Screaming Frog SEO не считает их таковыми.
Отсюда другие вопросы появились:
1. Как сделать, чтобы в записях и категориях, длина записи подходила в указанные параметры… ну хотя бы не превышала 155 символов, вообще какие файлы отвечают за мете дескрипшн?
2. Есть категории, в которых нужно в дескрипшене указать название родительской категории, желательно при редактировании типа контента, в разделе "SEO для категорий", но такого параметра нет или я не знаю как это сделать?
#5 Яндекс. На многих страницах сайта отсутствуют или некорректно заполнены метатеги Description. 24 апреля 2021 в 13:48
Нашёл где эта касая черта прописывается. Путь /system/core/template.php 336 строка. Добавил " /", сейчас отправлю на проверку, посмотрю.

@Evg, Спасибо за совет, попробую затестить Screaming Frog SEO!!

Яндекс пишет, что у вас идут дубли или description нет.

@Evg
Да вроде те страницы не дублируются и description есть.
#1 Яндекс. На многих страницах сайта отсутствуют или некорректно заполнены метатеги Description. 24 апреля 2021 в 13:26
"Возможные проблемы" в яндекс вебмастере:

На многих страницах сайта отсутствуют или некорректно заполнены метатеги Description. Это может негативно повлиять на представление сайта в результатах поиска.

Хотя Description прописан. Длина не превышает 200 символов...
Здесь яндекс пишет, что код у Description должен быть таким

<head>
<meta name="description" content="..."/>
</head>

А в инстанте в конце тега description нет косой черты, т.е. пишется так:

<meta name="description" content="...">

… Может в этом проблема?
#6 Написать Api для подключения к Firebase, чтобы уведомления подключить к моб приложению о новом сообщении 8 февраля 2021 в 20:42

Выше дали код, не понимаю что еще требуется.
Вот тут city.my-icms.ru/posts/9-testiruem-android-prilozhenie.html есть приложение где всё это реализовано, правда прошло 4 года и не помню что там было, но был написан компонент для взаимодействие сайта + firebase + приложение

Evanescence

Спасибо за ссылку. Но по ней нет абсолютно ни чего, что мне нужно. Там ссылки на АПК битые.

zeffs
Да ссылки и правда все битые. Но в любом случае это APK файлы. Evanescence, а можете поделиться исходниками? Скажем здесь или на github… чтобы может быть как-то тему развить… Просто эти вопрос с приложениями и push уведомлениями висит с 2014 года, как появился instantcms 2. Я даже как-то тему на форуме ссылка создавал. Через WebView конечно можно сделать, но без PUSH уведомлений это не то…
#7 Магазин + 1С 22 января 2021 в 12:37
vladimird, ответте пожалуйста на этот вопрос если можете

И не совсем понятно, как происходит обмен, через эту папку showcase ссылка на скриншот? Но тут тоже не понимаю, разве у компонента есть доступ к созданию папок в корневой дирректории сайта, папку нужно создать? Потому что у меня, когда в разделе "Обменн данными с 1с" заполняют все поля и нажимаю сохранить, нигде никаких файлов не появляется.

#8 Магазин + 1С 21 января 2021 в 12:37
А скажите пожалуйста, на последней версии магазина 1.2.10 доработка "Обменн данными с 1с" работает? Потому — что у меня при переходе в данный раздел, третий столбец вообще пустой. И не совсем понятно, как происходит обмен, через эту папку showcase ссылка на скриншот? Но тут тоже не понимаю, разве у компонента есть доступ к созданию папок в корневой дирректории сайта, папку нужно создать? Потому что у меня, когда в разделе "Обменн данными с 1с" заполняют все поля и нажимаю сохранить, нигде никаких файлов не появляется.
#9 Промокод для витрины товаров 10 декабря 2020 в 15:18
Шаг 2.
Думаю поле с промокодом, должно быть где-то здесь templates\default\controllers\showcase\tpl\cart_big.tpl.php
Скорее всего, после этого кода:
  1.  
  2. <div class="sc_price_div">
  3. <?php if ($item['price']){ ?>
  4. <?php echo $showcase->getPriceFormat($item['price']); ?>
  5. <?php } else { ?>
  6. <?php echo (isset($item['price']) ? 'Бесплатно' : 'Не указана');; ?>
  7. <?php } ?>
  8. </div>
  9. <div class="wd_scl_item_delete dsct_top_left" onClick="icms.showcase.scRemoveCartItem(this, '<?php html($id); ?>')" data-sc-tip="<?php html(LANG_DELETE); ?>?"><i class="fa fa-close"></i></div>
  10. </div>
  11. <?php } ?>
  12.  

Ну и расчёты по промокоду, ведуться здесь system\controllers\showcase\frontend.php. То есть после
  1.  
  2. if ($current_sale['type'] == 'prosent'){
  3. $prosent = ($summ / 100 * (float)$current_sale['sale']);
  4. $summ = ($summ - $prosent);
  5. }
  6.  
Может быть нужно добавить что-то такое

  1.  
  2. if ($current_sale['type'] == 'promocode') {
  3.  
  4. //Здесь нужно подумать, какую функцию вести, сохранять ли введённый промокод в базу,
  5. //делать ли сравнение с промокодом только что введённым в базу и действующим промокодом
  6. //и какие делать дальнейшие шаги
  7.  
  8. $summ = ($summ - $current_sale['sale']);
  9. }
  10.  
  11.  
А ещё наверное нужно столбец добавить в базу данныйх cms_sc_sales с заголовком "promo" к примеру, где будут храниться промокоды.
#10 Промокод для витрины товаров 10 декабря 2020 в 15:14
Шаг 1
В админке добавить в выпадающий список — "Промокод". Находим этот файл \system\controllers\showcase\backend\forms\form_sales.php и после
  1.  
  2. new fieldList('type', array(
  3. 'title' => 'Тип скидки',
  4. 'default' => 'prosent',
  5. 'items' => array(
  6. 'prosent' => 'Процент',
  7. 'pickup' => 'Сумма',
  8.  
Добавляем

  1.  
  2. 'promocode' => 'Промокод',
  3.  
На этом пока шаги заканчиваются)
#1 Промокод для витрины товаров 10 декабря 2020 в 15:07
Я думаю этот вопрос для многих актуален, но так и не решён. Ну во первых, интернет-магазин или витрина товаров, я говорю про этот instantcms.ru/addons/shop-for-instantcms.html .

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