Як я представляю "шматки" вмісту в Wordpress?


10

Я тільки коли-небудь використовував wordpress як платформу для ведення блогів, що розміщується у власних силах - до цих пір. У мене є вимога використовувати його для дуже базової CMS, яка буде складатися з ~ 10 сторінок, більшість з яких буде статичним вмістом, періодично оновлюватися. Мені знадобиться можливість завантажувати документи, вставляти зображення, редагувати копії за допомогою текстового редактора - майже всі стандартні функції Wordpress пропонує.

Однак у мене виникають труднощі з проблемою редагування конкретних розділів на сторінці - зокрема, просто я знаю, з чого почати. Звичайна CMS традиційно розбиває сторінку на окремі розділи і дозволить мені редагувати будь-який із цих розділів, безпосередньо редагуючи вміст, або додаючи спільний вміст у цьому місці. Я не можу дізнатися, як це зробити за допомогою wordpress.

Чи можна «розтягнути» модель «Сторінка» так, що Сторінка насправді є лише частиною вмісту, вона потрапляє на певну сторінку / шаблон, і вона - якось захищена від прямого перегляду (видалення її з меню навігації є початок).

Будь-які вказівки з того, з чого почати?

Оновлення

Для уточнення уявіть стандартну допис у блозі Wordpress. Притворіть, що це статичний фрагмент вмісту. Припустимо, ви хотіли, щоб редактор міг змінити лише перший абзац цієї публікації в блозі. Тепер,

  • чи повинен статичний вміст на цій сторінці містити публікацію, сторінку, шаблон чи щось інше?
  • чи повинен редагувати вміст Сторінка, ... чи щось інше?

Наприклад:

<h1>About us</h1>

<p>Example.com is a company specialising in examples, demonstrations,
and canonical stuff.</p>

Якщо я хочу, щоб цей абзац можна було редагувати, імовірно, мені потрібно щось на зразок:

<h1>About us</h1>

<p><?php insert_page('name-of-content-chunk'); ?></p>

Оновлення 2

Гаразд, після багатьох досліджень, проб та помилок я включив наступне:

  1. Wordpress не створений для того, щоб легко копіювати класичну CMS, особливо це стосується того, що на одній сторінці міститься кілька фрагментів вмісту.
  2. Цю модель можна імітувати більш-менш, використовуючи власні публікації (див. Нижче)
  3. Сторінки майже майже пропонують можливість це робити:
    • Плагін потрібен лише для включення сторінки
    • Сторінки не здаються настільки гнучкими, як публікації - наприклад, немає спеціальних типів сторінок

Метод, який я використовував, використовуючи власні типи публікацій, полягає в наступному:

  1. Сторінка - це "Сторінка" зі спеціальним шаблоном - називайте її "mypage.php"
  2. Цей шаблон містить таке:
    <div id = "header">
      <? php
        query_posts (array ('name' => 'foo', 'post_type' => 'text-text'));
        get_template_part ('текст-заголовок');
      ?>
    </div>
    
    <div id = "content">
      <p> Якась статична копія в шаблоні, яка може
      може бути змінено лише адміністратором сайту. </p>
    
      <? php
        query_posts (масив ('ім'я' => 'бар', 'пост_тип' => 'зображення'));
        get_template_part ('зображення');
      ?>
    </div>
    

Це має сенс для когось там? :-)


Питання до Wordpress тут прекрасно, якщо вони не надто заглиблюються в програмування.
Тім Пост

Відповіді:


3

Як було зазначено tnorthcutt, ви можете використовувати спеціальні типи публікацій . Однак вам слід також ознайомитись із спеціальними полями , які дозволять вам вказати біти динамічних спеціальних даних, які потрібно пов’язати з кожною сторінкою. Ось навчальний посібник Smashing Magazine про користувацькі поля, навчальний посібник Nettuts (та відео ) та список інших навчальних посібників.


Я вивчу типи публікацій. Проблема з користувацькими полями, якщо я правильно їх розумію, полягає в тому, що в гіршому випадку це просто звичайний текст, і в кращому випадку вони не пропонують редагування WYSIWYG.
Боббі Джек

Було б також розумно переконатися, що ви знайомі зі спеціальними таксономіями та як вони працюють з користувацькими типами публікацій.
Травіс Нортчетт

1

Якщо я правильно зрозумів, ви хочете мати різні макети для різних сторінок. Ви можете досягти цього або за допомогою спеціального шаблону для кожної сторінки сайту, або за допомогою однієї спеціальної сторінки з різними умовами.
Перший варіант див. У розділі WordPress Codex щодо користувацьких сторінок шаблонів: http://codex.wordpress.org/Pages#Creating_Your_Own_Page_Templates

Для другого дивіться цей підручник: http://www.darrenhoyt.com/2007/12/26/multiple-wordpress-page-layouts-in-one-single-template/

Потім ви можете перемістити ці "шматки" в різні файли PHP, які ви включаєте на конкретні сторінки.


Хм ... Я перегляну посилання, але я не зовсім впевнений, що правильно пояснив себе. По суті, мені потрібно працювати з максимально «атомним» вмістом; те, що кожен інший CMS, який я використав, робить дуже легким. Я оновив питання, намагаючись пояснити його краще.
Боббі Джек

Якщо ви хочете, щоб вміст був статичним (а під статичним я маю на увазі звичайний HTML, який не подається з БД - як, наприклад, повідомлення WordPress), але ви все одно хочете його змінити, додайте фрагменти до шаблону. Інакше помістіть його на сторінку і все.

і якщо я хочу, щоб ці шматки були редакторами WYSIWYG?
Боббі Джек


1

Погляньте на плагін, такий як Magic Fields. Він використовує власні поля внутрішньо, але інтерфейс може мати багатий текстовий редактор, список, що випадає тощо.

Це дозволяє визначити елементи вмісту, їх типи та (для вибору) їх значення. Потім ваша тема може відображати її.

Альтернативно, було б визначити область плагінів і вирішити, який плагін буде туди входити. Це менш гнучко, проте, як і раніше, не допускається використання двох сторінок / публікацій конкретного вмісту.


1

Найкращий плагін для безболісного додавання спеціальних областей вмісту, крім простого заголовка та вмісту, - це, мабуть, плагін "Більше полів".

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.