Внешняя линковка. get_the_permalink( #поста ) + список url
Задача:
Вывести в виджет внешние ссылки по списку. 1 пост = 1 уникальная внешняя ссылка.
Есть все ID постов и список 20.000 внешних ссылок + анкоры.
Пример:
<a href="http://сайт.ком/ссылка-1">Анкор1</a> выводить на get_the_permalink( 1 ) <a href="http://сайт.ком/ссылка-2">Анкор2</a> выводить на get_the_permalink( 2 ) <a href="http://сайт.ком/ссылка-3">Анкор3</a> выводить на get_the_permalink( 3 )
и так далее.
Пытался решить это с помощью плагинов и прочего, но нет удобного массового варианта для большого количества ссылок. Руками проставить 20тыс. штук нереально.
Идеальный вариант был бы - это просто выгрузить список внешних ссылок + анкор и чтоб оно равномерно распределило 1 ссылка - 1 рандомная запись (но статически, не каждый раз рандомная линковка).
Написать импортер, который присвоит каждой записи одну внешнюю ссылку, сохранит ссылку в meta каждого поста.
Написать виджет, который будет брать записи и выводить ссылки для этих полей.
Спасибо, вижу это достаточно сложная задача.
Вариант с импортёром уже есть существующий - это wp-all-import. Там можно создавать
кастомное поле и добавлять его в meta.
Минус этого варианта, что если нужно быстро убрать ссылки - то можно накосячить с массовым изменением данных постов или ещё чем-то.
Ps. Я кстати так понял, что можно делать и без особого виджета данное действие. Просто добавив кастомное поле в импортёр и вставив этот код в sidebar.php...
Есть ещё какие-то варианты? Очень хочется верить, что можно загрузить список и выводить его на сайте, пусть даже уже не в виджетах. (раз так сложно)
В любом случае нужно писать код.
Сделайте 2 поля для записей - ссылка и флаг включения. Если флаг включен - выводим ссылку, если нет - не выводим. Или заведите глобальный флаг (например константу SHOW_LINKS), который будет работать для всех записей сразу.
Тут вопрос как прикрепить ссылку к посту. Я предложил мета-поля, так как это проще всего. Можно создать отдельную таблицу в базе (post_id | link | anchor | enabled).
Вывести - не проблема, как прикрепить и админить - вот в чем вопрос.