DEV: Игнорирование участника и некоторые настройки в админ-панели...

Evg Evg 20 Октября 2022 (ред)

По многочисленным просьбам, т.к. я сам не очень сторонник этого, добавлен «игнор участника»:

Игнорирование участников

После того, как временно добавил:

Добавил в игнор

Чтобы добавить в игнор, достаточно зайти на страницу профиля и нажать в шапке чужого профиля на «замок». Убрать можно на отдельной странице.

После добавление, мы не будем видеть посты в ленте.

И ещё, некоторые настройки в новой админ-панели. Это для рекламы:

    'ads_home_post'         => 'Главная страница, лента, после 4 поста',
    'ads_home_sidebar'      => 'Главная страница, боковая колонка',
    'ads_home_menu'         => 'Главная страница, левое меню',
    'ads_post_sidebar'      => 'Пост, боковая колонка',
    'ads_post_footer'       => 'Пост, подвал поста',
    'ads_post_answer'       => 'Пост, после 2 ответа',
    'ads_catalog_home'      => 'Главная страница каталога, под баннером',
    'ads_catalog_sidebar'   => 'Боковая колонка каталога',

На этом сайте рекламы не будет, но в движке возможность размещать её должна быть…

Ещё моменты, которые сейчас мы смотрим на этой сайте, поддержка rtl, например.

Тестируем…

8 Ответов

  1. German German 20 Октября 2022 (ред.)

    Хороший функционал. А поддержку rtl если корректно сделать, то вообще хорошо будет!

  1. yuran yuran 20 Октября 2022 (ред.)

    Что-то попробовал понажимал на замок — посты в ленте все равно наблюдаю…

    Убрать можно на отдельной странице.

    А где убрать можно? Короче подозреваю, что пока не работает… Настройки рекламы в админке вижу, а этого замка я так понимаю пока на гите нет.

    1. Evg Evg 20 Октября 2022 (ред.)

      Обновить кеш, т.к. изменения в js есть.

  1. Evg Evg 21 Октября 2022

    Добавил на GitHub, новую версию. Чтобы работало, если кто-то хочет залить новые файлы, то необходимо добавить таблицу:

    CREATE TABLE `users_ignored` (
      `id` int(11) NOT NULL,
      `user_id` int(11) NOT NULL,
      `ignored_id` int(11) NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
    
    ALTER TABLE `users_ignored`
      ADD PRIMARY KEY (`id`),
      ADD KEY `ignored_id` (`ignored_id`),
      ADD KEY `user_id` (`user_id`);
    
    ALTER TABLE `users_ignored`
      MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;

    В релиз, напишу более подробно. Если обновлять master с GitHub, то значит есть предсталение, что вообще происходит и т.д. Папка vendor новая, архив от корня сайта: /dev/vendor.zip.

    1. Murad Murad 21 Октября 2022 (ред.)

      Блин, а мне он всё больше нравиться) Пока не обновлял ничего, уеду, тогда в спокойной обстановке нужно всё внимательно изучить.

  1. Murad Murad 21 Октября 2022 (ред.)

    Вот! Наконец! Огромнейшее спасибо)

  1. Cipherchunk Cipherchunk 13 Марта 2023 (ред.)

    Please how does the ads work?

    1. Evg Evg 14 Марта 2023 (ред.)

      So far, no way. The site uses Content Security Policy, which means that if the fields are added conveniently in the admin interface, and the administrator places the code there, this code will still not work.

      This code will access an external URL which will be blocked Content Security Policy.

      The administrator will need to additionally add allowed URLs to the whitelist, which requires some knowledge.

      Don't do it automatically! Because the desired URLs may not be contained in the ad code. It is necessary to look at the browser console, which is blocked.

      So it turns out that the panel at this stage does not solve anything, it adds convenience, nothing more, and then, at one step.

      I want to say that having this knowledge already now, anyone can connect advertising using include() in templates

      So it turns out that here again everything is not so simple. Think.


      Пока никак. На сайте используется Content Security Policy, а это значит, что если в админке удобно добавить поля, и администратор поместит туда код, то этот код всё равно не будет работать.

      Этот код будет обращаться к внешнему URL-адресу, который будет заблокирован политикой безопасности контента.

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

      Автоматически это не сделать! Т.к. нужные URL могут не содержаться в коде рекламы. Это надо смотреть консоль браузера, что заблокировано.

      Вот и получается, что панель на данном этапе ничего не решает, добавляет удобство, не более того, и то, одним шагом.

      Хочу сказать, что имея эти знания уже сейчас любой желающий может подключить рекламу с помощью include() в шаблонах.

      В общем, думаю, смотрю.