m-torin
  • 0
Учитель

Как сделать кнопкой?

  • 0

Существует много информации о том, как заставить функцию «Подробнее» отображать другой текст в Кодексе, но какой фильтр нужно использовать, чтобы он отображался <button class="readmorebtn" onclick(permalink)>Read More</button> ?

Share
  1. Тег предназначен для использования в формах. Я думаю, что если вам нужен семантически правильный html-код, вы должны оформить ссылку «Подробнее» так, чтобы она выглядела как кнопка, а не заменять ее тегом .

    • 0
  2. Ссылка «(подробнее…)» фильтруется the_content_more_link вget_the_content() файлах. Вы можете подключиться к этой функции и позволить ей вернуть все, что вы хотите.

    add_filter('the_content_more_link', 'more_button');
    function more_button($more_link) {
        return '<button class="readmorebtn" onclick="' .
            esc_attr('window.location="' . get_permalink() . '"') .
            '">Read more</button>';
    }
    
    • 0
  3. Краткий ответ: вы этого не сделаете.

    Более длинный и полезный ответ: вам нужно подключиться к the_content_more_link фильтру и изменить простую ссылку на стильный элемент, который выглядит как кнопка. Тема, которую я использую на своем сайте, уже делает это. Это превращает мою ссылку «Читать дальше» в:

    <div class="readon-wrap1">
        <div class="readon1-l png"></div>
        <a href="http://mindsharestrategy.com/why-i-run/" class="readon-main">
            <span class="readon1-m png">
                <span class="readon1-r png">More</span>
            </span>
        </a>
    </div>
    

    Вы можете увидеть обычную ссылку «Читать далее», скрытую посередине. Различные <div> s и <span> s вокруг него помогают стилизовать ссылку так, чтобы она отображалась как сплошная серая кнопка:

    Кнопка «Подробнее»

    Так что, если вы хотите, чтобы ваша ссылка выглядела как кнопка, это путь. Как указано в комментариях @sorich87<button> , этот тег предназначен для использования внутри форм. Поэтому, если вы используете <button> тег для ссылки «Читать далее», вы столкнетесь со следующими проблемами:

    1. Ваш сайт не пройдет проверку
    2. Макет вашего сайта может сбить с толку программы чтения с экрана и некоторые механизмы синтаксического анализа (поскольку они увидят <button> и либо удалят ссылку, либо выдадут ошибку при поиске остальной части формы).
    3. Вы можете столкнуться с конфликтами, если случайно вставите <!--more--> тег в тело формы. Вы можете сейчас сказать: «Я не буду этого делать», но несчастные случаи есть случайности, и это все еще может произойти… тогда наступит странность и хаос.
    • 0

Оставить ответ

You must login to add an answer.