1 (ответов 2, в форуме Kandidat CMS v.2.0.3)

Chmod=0777. Должно сработать!

2 (ответов 12, в форуме FAQ (Вопрос - Ответ))

40in1951 написал:

Немного поспешил с темой  -  решение нашел.

Опишите! Может кому и пригодиться!

3 (ответов 6, в форуме FAQ (Вопрос - Ответ))

Pant, можно сделать по средствам javascript! Например, вот так вот:

<meta http-equiv="refresh" content="0; url=/">

где 0 - это время задержки в секундах!

Можно так, для "красивности"! Код примера редиректа с таймером:

<script type="text/javascript">
var sec=5; //Указать время для редиректа
function Sec()
{
document.getElementById("sec").innerHTML=sec;
sec--;
if(sec==1)
{
location.replace("/")
}
setTimeout('Sec()',1000);
}
</script>
<noscript>
<meta http-equiv="refresh" content="20; /">
</noscript>
<div align="center">Пожалуйста, подождите<span style="color:red;font-weight: bold;" id="sec" name="sec">10</span> сек или перейдите по этой ссылке на <a href="/">главную страницу сайта</a></div>
<script type="text/javascript">
Sec();
</script>

4 (ответов 6, в форуме FAQ (Вопрос - Ответ))

ErrorDocument 404 /index.php

5 (ответов 29, в форуме Kandidat CMS v.2.0.3)

pioner77, посмотрите на просторах Рунета какие есть отличия CKEditor`a от других редакторов!

6 (ответов 6, в форуме FAQ (Вопрос - Ответ))

Pant, в папке articles должен лежать файл с названием 404.dat, в который заключен контент данной страницы, например:

<h1>Ошибка 404</h1>
<h2>Несуществующая страница.</h2>
<p><span style="color: red;">Страница, к которой Вы обратились, не существует.</span></p>
<p style="text-align: center;"><img alt="Ошибка 404" title="Ошибка 404" src="/media/404.gif"></p>

<p>Рекомендации:</p>
<ul class="list">
    <li>Проверьте написание адреса страницы</li>
    <li>Воспользуйтесь Меню, для перехода на другие страницы сайта!</li>
</ul>

7 (ответов 29, в форуме Kandidat CMS v.2.0.3)

bekman, а чем он лучше CKEditor`a?
Также, он называется Redactor! http://redactorjs.com/

Его нужно "прикрутить"?

8 (ответов 0, в форуме Разное)

Привет, сообщество!
Вот не большой скрипт, который предупреждает о сборе файлов cookie на сайте! Может кому и понадобиться! Это по 152 ФЗ!

Начнёмсъ!

1. Создайте файл 152.js или любое другое название! Положите в любое для вас место! Я обычно складываю *.js-файлы в папку JS.
Затем, вставьте текст такого содержания:

$(document).ready(function ($) {
    /*****************************/
    /* Текст всплываемой надписи */
    var text = '<p>На данном сайте используются cookie-файлы и другие аналогичные технологии. Если, прочитав это сообщение, вы остаетесь на сайте, это означает, что вы не возражаете против использования этих технологий.</p>';

    /* Стили всплывающей надписи */
    var styles = {
      "position": "fixed",
      "left": "30px",
      "bottom": "30px",
      "width": "400px",
      "height": "auto",
      "padding": "10px",
      "background-color": "#F2F2F2",
      "opacity": "1",
      "border": "1px solid #888",      
      "border-radius": "10px",
      "color": "#555",
      "z-index": "10000",
    };
    /* Стили всплывающей надписи - параграф(абзац) */
    var styles_p = {
      "margin": "10px 0px",
    };
    /* Стиль ссылки в надписи*/
    var styles_a = {
      "color": "#188be5",
    };
    /* Стиль кнопки в надписи */
    var styles_button = {
      "float": "right",
      "cursor": "pointer",
      "background": "#088dba",
      "color": "#fff",
      "padding": "5px 35px",
      "border-radius": "5px",      
      "border": "none",
      
    };
    /* Кнопка при наведении */
    var styles_button_hover = {
      "float": "right",
      "cursor": "pointer",
      "background": "#088dba",
      "color": "#fff",
      "padding": "5px 35px",
      "border-radius": "5px",      
      "border": "none",

    };
    
    /****************************************/
    /* Текст под формами, не меняйте классы */
    var formtext = '';
    var formtext_styles = {
      "color": "#7d7d7d",
      "font-size": "12px",
      "line-height": "1.1em",
      "padding": "15px 5px",
      "letter-spacing": "0px",
      "text-align": "center"
    };
    /* стиль для ссылки */
    var formtext_styles_a = {
      "color": "#7d7d7d",
      "font-size": "12px",
      "line-height": "1.1em",
    };
    /* Селекторы form которых не надо вставлять надпись, через запятую */
    /* Если в форме есть классы (class) то добавим их .имя_класса без пробелов */
    /* Если в форме есть идентификатор (id) то добавим их #идентификатор без пробелов */
    var ignore_form = 'body > div.main-block > div > form.main-form, #poll-form, .blind_search_form, #sdsfsdf';

    /**************************************/ 
    /* Ссылки в футер, не меняйте классы  */    
    var links = '<div class="FZ152_footer_links"></div>';
    var links_styles = {
      "color": "#7d7d7d",
      "padding": "0 0 10px 0",
      "margin": "0 0 10px 0",

    };
    /* стиль для ссылки */
    var links_styles_a = {
      "color": "#fff",
      "font-size": "12px"
    };
    
    /*Селектор куда вставить ссылки в футер*/
    var FooterSelector = '.contacts';


    /************************************************************/
    /* !!! Дальше ничего не меняем, если ты  НЕ программист !!! */
    /************************************************************/
  setTimeout(function() {
    /* Вставим текст к формам */
    FZ152_SetCheckForms ();
    /* Вставим ссылки в футер */  
    $(FooterSelector).append( links );
    /* Применим стили */
    $('.FZ152_footer_links').css( links_styles );  
    $('.FZ152_footer_links a').css( links_styles_a );  

    var ireadthis = 0;
    ireadthis = FZ152_readCookie('FZ152_ireadthis');
    if (ireadthis != 'yes') {
      /* Вставим надпись , если нет нужной куки */
      $('body').append('<div class="FZ152_personal_information__">' + text +'<p><a href="/privacy-policy.html" rel="nofollow">Подробнее</a> &nbsp; &nbsp; &nbsp; &nbsp; <button>Хорошо</button></p></div>');
  
      $('.FZ152_personal_information__').css( styles );  
      $('.FZ152_personal_information__ a').css( styles_a );  
      $('.FZ152_personal_information__ p').css( styles_p );  

      $('.FZ152_personal_information__ button').css( styles_button );  

      $('.FZ152_personal_information__ button').hover(function(){
        $(this).css( styles_button_hover );  
      }, function() {
        $(this).css( styles_button );  
      });
  
  
      $('.FZ152_personal_information__ button').click(function() {
        FZ152_createCookie('FZ152_ireadthis', 'yes', '3');
        $('.FZ152_personal_information__').hide();
        return false;
      });
    }
  
      /*Для ajaxform и встлывающих form*/
      var isChecking = false;
      $('body').bind("DOMSubtreeModified",function(){
        if (!isChecking) {
          isChecking = true;
          setTimeout(function() {
            FZ152_SetCheckForms ();
            isChecking = false;
          }, 200);
        }
      });
  }, 1000);
  
  /* Функция для вставки надписи в формы */
  function FZ152_SetCheckForms () {
    var selector = 'form';
    if (ignore_form != '') {
      selector = 'form:not(' + ignore_form + ')';
    };
    $(selector).each(function(){
      if (!$(this).hasClass('FZ152_form')) {     

          $(this).append( formtext );
          $('.FZ152_personal-information').css( formtext_styles );            
          $('.FZ152_personal-information a').css( formtext_styles_a );
          $(this).addClass('FZ152_form');

      }
    });
  }

});  

function FZ152_createCookie(name, value, days) {
    var expires;
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        expires = "; expires=" + date.toGMTString();
    } else {
        expires = "";
    }
    document.cookie = encodeURIComponent(name) + "=" + encodeURIComponent(value) + expires + "; path=/";
};

function FZ152_readCookie(name) {
    var nameEQ = encodeURIComponent(name) + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) === ' ')
            c = c.substring(1, c.length);
        if (c.indexOf(nameEQ) === 0)
            return decodeURIComponent(c.substring(nameEQ.length, c.length));
    }
    return null;
};

2. Подключите в файл шаблона. Пример подключения такой: <script type="text/javascript" src="/js/fz152.js"></script>

3. Готово!

P.S. Вся текстовка и css-разметка храниться в файле fz152.js. Можете редактировать на свой вкус и цвет! Текст о политике конфиденциальности можете найти на просторах Рунета!

Antoni, bootstrap. Классы идут.

Antoni написал:

Если экран не очень широкий, а пунктов много, то они могут переноситься на другую строку

Bootstrap?

Antoni написал:

Если экран ещё уже, то меню скрывается, а показывается кнопка меню (с тремя полосками)

Bootstrap.
=========
Зависит от верстки. Div`оaвская - совсем друга технология построения. Bootstrap`ная - другой уровень.

Antoni, дайте ссылку на сайт! Глянуть бы!

12 (ответов 29, в форуме Kandidat CMS v.2.0.3)

pioner77 написал:

напиши здесь или в личку свой кошелек на яндексе

ЯД: 41001897291844

veron, я чуть выше это описал! Даже видео есть! Смотрите! )

13 (ответов 4, в форуме Kandidat CMS v.2.0.3)

?>
счётчик
<?

Добавлено через 1 минуту 33 секунды
Оооо, нет... Дискриминация.....

14 (ответов 29, в форуме Kandidat CMS v.2.0.3)

Вот, видео чуть-чуть как сделать! Сильно не пинайте: чуть не трезв делал да и время около пяти утра.
https://youtu.be/YzXR9zJRj8w

15 (ответов 29, в форуме Kandidat CMS v.2.0.3)

<textarea> - не меняем!
Достаточно в папку админ подложить CKeditor и в файлах admin/styles/modern/adm_editor.tpl и в файле adm.tpl прописать абсолютный путь до редактора, т.е.,
<script type="text/javascript" src="<?=$prefflp;?>/admin/ckeditor/ckeditor.js"></script>

16 (ответов 29, в форуме Kandidat CMS v.2.0.3)

40in1951 написал:

Блинн, про "чистую" я и забыл.....

Да нормательно!

Всё стандартно!

<textarea> заменяем и можно использовать!

17 (ответов 29, в форуме Kandidat CMS v.2.0.3)

40in1951, если установить чистую 2.0.3 и "подкинув" туда CKEditor - отключать ничего не нужно! Всё работает на 3*15! )

18 (ответов 29, в форуме Kandidat CMS v.2.0.3)

pioner77, там даже заморачиваться сильно не нужно! В версии 2.0.3 уже прописаны тэги <textarea></textarea>! Так что, Вы просто можете подложить в админку папку CKEditor из версии 2.0.2! Вот и всё, готово!

19 (ответов 3, в форуме Первые шаги)

veron написал:

Спасибо. Понял свою ошибку))

Пользуйтесь на здоровье!

20 (ответов 3, в форуме Первые шаги)

veron, всё работает! У меня OS-panel с версией PHP-сервера 5.6 - полёт нормальный!

21 (ответов 29, в форуме Kandidat CMS v.2.0.3)

pioner77, по аналогии Возьмите из предыдущей версии! Алгоритм построения один и тот же! Ctrl+C = Crtl+V!

22 (ответов 29, в форуме Kandidat CMS v.2.0.3)

pioner77, можно и CKEditor прикрутить вместо LiveEditor!

23 (ответов 2, в форуме FAQ (Вопрос - Ответ))

В admin/ckeditor/config.js:

config.fillEmptyBlocks = false;
config.enterMode = CKEDITOR.ENTER_BR;

Вот тема: http://forum.kan-studio.ru/viewtopic.php?pid=14446#p14446 …

24 (ответов 1, в форуме Комната программистов)

/public_html/sitename.domen/articles->news->engine... И так далее! В корне Вашего сайта всё находится!

25 (ответов 7, в форуме FAQ (Вопрос - Ответ))

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

К примеру, так:

function to_head($matches){
    global $templatepp, $prefflp, $myinclude, $localpage;
    $to_head='
<style type="text/css">
    @import url('.$prefflp.'/css/style.css);
</style>
<script type="text/JavaScript" src="'.$prefflp.'/js/jquery.js" charset="utf-8"></script>
';
    $cssinclude='';
    if(!empty($myinclude)){
          if(file_exists($localpage.'css/'.$myinclude.'.css'))$cssinclude.='
<style type="text/css">
    @import url('.$prefflp.'/css/'.$myinclude.'.css);
</style>';
          if(file_exists($localpage.'css/'.$myinclude.'.js'))$cssinclude.='
<script type="text/JavaScript" src="'.$prefflp.'/js/'.$myinclude.'" charset="utf-8"></script>
';
    }
    return '<head>'.$matches[1].$to_head.$cssinclude.'</head>';
}

function to_end_body($matches){
    global $templatepp;
    if(!preg_match(makescript('L2thbi1zdHVkaW9cLnJ1L3Vp'),$matches[1])){
        $to_end_body=makescript('');
    }
    @$to_end_body.='

<script type="text/JavaScript" src="'.$prefflp.'/js/iLoad.js" charset="utf-8"></script>
';
    return '<body>'.$matches[1].$to_end_body.'</body>';
}
function parse_incl($in_incl){
    $out_incl=preg_replace_callback('/<head>(.+)<\/head>/siu','to_head',$in_incl);
    $out_incl=preg_replace_callback('/<body>(.+)<\/body>/siu','to_end_body',$out_incl);
    return $out_incl;
}
Dysha написал:

Но меня больше волнует проблема с категориями  -  не могу создавать для своих шаблонов.

Поясните чуть! А то как-то не особо понятно, что именно требуется!