Чтобы организовать структуру в WordPress, которая связывает между собой различные посты и отображает их на страницах, отсортированных по компаниям, вы можете воспользоваться такими инструментами и методами:
1. Категории и метки:
Используйте стандартные таксономии WordPress, такие как категории и метки, для группировки связанных постов. Например, создайте категорию с именем компании и назначьте её соответствующим постам.
2. Пользовательские таксономии:
Если встроенные категории и метки недостаточно гибкие для ваших нужд, можно создать свою собственную таксономию. Для этого вам понадобится код на PHP, который добавляет новую таксономию в функции темы (functions.php) или плагин:
```php
function create_company_taxonomy() {
register_taxonomy(
'company', // таксономия 'company'
'post', // привязываем к типу записей 'post'
array(
'label' => __( 'Companies' ),
'rewrite' => array( 'slug' => 'company' ),
'hierarchical' => true,
)
);
}
add_action( 'init', 'create_company_taxonomy' );
```
3. Пользовательские типы записей (Custom Post Types, CPT):
Создайте CPT для компаний, чтобы легко управлять страницами каждой компании и прикреплять к ним новости, руководства и другой контент через таксономии. Плагины типа CPT UI позволяют делать это визуально без написания кода.
4. Связывание постов:
Используйте плагины, такие как Posts 2 Posts или ACF (Advanced Custom Fields), чтобы установить прямые связи между различными типами записей, например между страницами компаний и постами.
5. Отображение контента на страницах:
Для отображения связанных постов на страницах компаний можно использовать цикл WP_Query, который позволяет выбирать посты по терминам таксономии. Например, в шаблоне страницы компании:
```php
$args = array(
'post_type' => 'post',
'tax_query' => array(
array(
'taxonomy' => 'company',
'field' => 'slug',
'terms' => 'company-slug', // Замените на актуальный слаг компании
),
),
);
$related_posts = new WP_Query( $args );
if( $related_posts->have_posts() ) :
while ( $related_posts->have_posts() ) : $related_posts->the_post();
// вывод контента поста
endwhile;
endif;
wp_reset_postdata();
```
К сожалению, я не могу показать скриншоты, так как это текстовый интерфейс, но данная информация поможет вам настроить структуру WordPress в соответствии с вашими потребностями. Все приведенные выше инструменты и коды требуют базовых знаний о том, как работать с кодом WordPress и его функциями. Если вы не уверены в своих навыках программирования, рекомендуется использовать плагины или обратиться к профессионалу.