1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

php условие поста для отображения

Тема в разделе 'PHP', создана пользователем Fituchini, 20 авг 2018.

  1. TopicStarter Overlay

    Fituchini Пользователи

    Сообщения:
    339
    Лайки:
    71
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    PWAA
    Страна:
    Russian Federation Russian Federation
    Добрый день граждане.
    Помогите с решением проблемы.
    Поставил себе IPS форум. Пользуюсь такой, а потом появилась потребность скрывать под хайд ссылочки.
    Да вот только не просто схайдить, а дать условие на отображение.
    Скрипты в шаре не дают таких возможностей.
    В самом популярном присутствует только такое. [_hide] тут текст [/hide]
    А нужно чтобы было такого плана [_hide условие]text[/hide]
    Условие одно, пишем ручками [_hide p=int] где p= < Это константа чтобы сработало условие, int количество постов.
    Заглянул в скрипт который популярный. И чего то приуныл. При попытке сделать нечто похожее получил какашку.
    Вот оригинал настроек
    original.jpg

    вот после моего криворукого вмешательства
    error.jpg
    Естественно нифига не работает.
    Помогите с настройкой.
    Код прячется тут

    Прикрепляю полный скрипт
    Помогите пожалуйста в дополнении скрипта.

    Известные данные
    PHP:
    // загрузить текущего пользователя
                    
    $memberTest = \IPS\Member::loggedIn();
                
    // Имя
                
    echo $memberTest->name;

                
    //Репутация
                
    echo $memberTest->pp_reputation_points;
               
                
    //Посты
                
    echo $memberTest->member_post;

    Вложения:

  2. TopicStarter Overlay

    Fituchini Пользователи

    Сообщения:
    339
    Лайки:
    71
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    PWAA
    Страна:
    Russian Federation Russian Federation
    Нужную функцию нашёл, которая отвечает за хайд.
    Только вот условие не могу повесить.
    PHP:
    public function hideLinkAndCode($content$showmsg=true)
        {
            try
            {
                
    $types explode(",", \IPS\Settings::i()->bim_hide_content);
                if ( 
    $types )
                {
                    
    $msg $showmsg ? \IPS\Member::loggedIn()->language()->addToStack('bim_hide_hideInSearch') : null;
                   
                    if ( 
    in_array("links"$types) )
                    {
                        
    preg_match_all('#\bhttps?://[^,\s()<>]+(?:\([\w\d]+\)|([^,[:punct:]\s]|/))#'$content$match);
                        for ( 
    $i $i count$match[0] ) ; $i++ )
                        {
                            
    $content str_replace$match[0][$i], $msg$content);       
                        }
                    }
                    if ( 
    in_array("hide"$types) )
                    {
                        
    $content preg_replace('/\[hide\](.+?)\[\/hide\]/is'$msg$content); //как сюда повесить условие?
                    
    }           
                }
                return 
    $content;
            }
            catch ( \
    RuntimeException $e )
            {
                if ( 
    method_existsget_parent_class(), __FUNCTION__ ) )
                {
                    return 
    call_user_func_array'parent::' __FUNCTION__func_get_args() );
                }
                else
                {
                    throw 
    $e;
                }
            }
        }
Черновик сохранён Черновик удалён
Similar Threads
  1. Shaman
    Ответов:
    9
    Просмотров:
    1.920
  2. san4e3
    Ответов:
    4
    Просмотров:
    2.055
  3. this
    Ответов:
    0
    Просмотров:
    1.457
Загрузка...

Поделиться этой страницей