Статьи

Как работать с WordPress Term Meta: Term Metadata API

Первый пост в этой серии заложил основы для понимания таксономий, терминов и их отношений в контексте WordPress. Если вы еще не читали его, и вы новичок в разработке WordPress, я настоятельно рекомендую прочитать его, так как этот пост будет построен на основе всего, что описано в этой статье.

Кроме того, поскольку мы продолжаем говорить о большем количестве типов метаданных, важно рассмотреть предыдущие серии, в которых мы рассмотрели:

Причина, по которой стоит ознакомиться с этими статьями, заключается в том, что эта статья будет напоминать некоторые методы, описанные в этих статьях, а также будет опираться на некоторые стратегии работы с похожими API.

Помимо всего прочего, это руководство призвано предоставить пошаговое руководство по работе с одним из новейших API-интерфейсов метаданных, доступных в WordPress.

Как упоминалось ранее, эта конкретная статья больше ориентирована на тех, кто только начинает заниматься разработкой WordPress или хочет развить свои навыки. Так что если вы продвинутый разработчик, то содержание, описанное в этой статье, может быть не самым интересным для вас.

При работе с этим учебным пособием следует помнить, что код не должен использоваться в производственной среде. То есть он предназначен исключительно для изучения API и понимания его работы.

Код, который мы пишем, не предназначен для использования в проекте, который будет использоваться для аудитории или группы пользователей. Основная причина заключается в том, что существуют такие темы, как очистка, проверка, экранирование и т. Д., Которые выходят за рамки как предыдущих серий, так и этой серии.

После того, как мы завершим эту статью, мы перейдем к более сложным темам, таким как эти, но сейчас мы собираемся сосредоточиться исключительно на Term Metadata API.

Прежде чем говорить об API метаданных, давайте удостоверимся, что мы все на одной странице, поскольку она связана с различной терминологией, которую мы будем использовать. В частности, нам необходимо убедиться, что мы понимаем таксономии, термины и отношения между ними.

Во-первых, Кодекс определяет таксономии как:

В WordPress таксономия — это механизм группировки для некоторых сообщений (или ссылок или пользовательских типов сообщений).

В стандартной установке WordPress вы можете рассматривать их как категории и теги . Они могут быть иерархическими, как категории, или неиерархическими, как теги.

Термины , с другой стороны, определяются как:

В WordPress термин — это классификация, группа или подмножество таксономии, где последним может быть категория, тег или пользовательская таксономия. По умолчанию термины имеют заголовок, слаг и описание. Иерархические таксономии, такие как категории, могут определять родительский термин.

Наконец, отношения между таксономиями и терминами таковы, что одно не может существовать без другого (особенно в иерархических таксономиях). То есть с таксономией категории должен быть связан хотя бы один термин; однако, неиерархические таксономии не обязательно должны следовать этому.

С учетом вышесказанного, давайте начнем работать с API метаданных термина.

Как и в случае других доступных API метаданных, мы сможем сделать такие вещи, как:

  • add
  • update
  • retrieve
  • delete

И поскольку это новый API, может быть не сразу понятно, каковы некоторые из преимуществ этого API. Хотя в этой статье мы рассмотрим только некоторые основы, стоит рассмотреть лишь некоторые из вещей, которые мы можем сделать.

Например:

  • Свяжите цвета или изображения с термином
  • Ограничить определенные посты, которые принадлежат термину
  • Добавьте двоичные данные, такие как документы или PDF-файлы, для термина, который можно сделать доступным во внешней среде.
  • …и более.

Конечно, есть еще много возможностей. Но пока давайте посмотрим, как мы можем включить это в нашу работу.

Чтобы начать, давайте удостоверимся, что мы на одной странице с тем, что мы будем использовать, чтобы выполнить эту работу. В частности, вот что вам нужно, и вот что я использую.

  • IDE — я буду использовать Atom
  • интерфейс базы данных — я буду использовать Sequel Pro
  • версия WordPress — я буду использовать WordPress 4.4.2
  • основная тема — я буду использовать двенадцать

Как только вы все это настроите, мы будем готовы к работе. Если вам нужна помощь в настройке среды разработки, просмотрите эту серию статей .

Первое, что нам нужно сделать, это создать файл, который будет содержать всю работу, которую мы собираемся сделать в этом уроке.

Во-первых, нам нужно создать tutsplus-term-metadata.php в корне twentysixteen темы twentysixteen .

Далее нам нужно добавить следующую строку кода в файл functions.php темы. Это обеспечит включение нашей работы в тему.

1
2
3
4
5
6
<?php
 
/**
 * Add the code that allows us to work with the Term Meta API.
 */
include_once( ‘tutsplus-term-metadata.php’ );

Когда вы перезагрузите браузер, вы должны увидеть что-то вроде следующего изображения:

Стандартный Hello World, который поставляется с WordPress

Не должно быть никакого вывода ошибок, и оно должно работать, как будто ничего не изменилось. Наконец, если вы работаете с новой установкой WordPress, термин таблица метаданных должен выглядеть совершенно пустым:

Пустая таблица базы данных termmeta

Далее, чтобы убедиться, что у нас есть категория, с которой мы работаем, создайте новую категорию в вашей установке WordPress. Я собираюсь создать один с именем Main и убедиться, что Hello World помечен этим.

После этого взгляните на таблицу терминов в базе данных, чтобы получить term_id . В моем случае term_id равен 2 . Ваш может отличаться, но дело в том, что вы знаете этот идентификатор рассматриваемого термина:

Таблица базы данных терминов

Обратите внимание, как мы будем использовать это на протяжении всего урока.

Для начала важно признать, что add_term_meta функция add_term_meta может служить двум целям:

  1. Функция может создавать неуникальные значения, связанные с одним термином ID и одним мета-ключом.
  2. Функция может создавать уникальные значения, связанные с одним термином ID и одним мета-ключом.

Функция принимает идентификатор термина, мета-ключ, мета-значение и необязательное логическое значение, которое определяет, является ли сохраняемое значение уникальным.

Во-первых, давайте создадим уникальное значение в базе данных. Введите следующий код в своем редакторе, обновите Hello World , а затем просмотрите таблицу termmeta .

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?php
 
add_filter( ‘the_content’, ‘tutsplus_add_term_meta’ );
function tutsplus_add_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        add_term_meta( $term_id, ‘my_meta_key’, ‘my_meta_value’, true );
    }
 
    return $content;
 
}

Вы должны увидеть вашу информацию.

Метаданные в таблице терминов

Если вы измените мета-значение и обновите страницу, вы должны заметить, что значение в базе данных не изменилось. Это потому, что вы сказали, что это должно быть уникальное значение, и первое записанное значение не будет изменено или перезаписано.

Это может быть достигнуто с помощью update_term_meta , но мы рассмотрим этот код на мгновение.

Прежде чем посмотреть, как мы можем обновить мета-термин, давайте посмотрим, как мы можем добавить несколько значений к одному мета-ключу и одному и тому же идентификатору термина. Код ниже выглядит аналогично приведенному выше, за исключением того, что мы не передаем true в функцию.

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
 
add_filter( ‘the_content’, ‘tutsplus_add_term_metas’ );
function tutsplus_add_term_metas( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
 
        for ( $i = 0; $i < 3; $i++ ) {
 
            $meta_value = «my_meta_value_$i»;
            add_term_meta( $term_id, ‘non_unique_key’, $meta_value );
 
        }
 
    }
 
    return $content;
 
}

Обновите Hello World несколько раз, а затем посмотрите на базу данных. Вы должны увидеть что-то вроде этого:

Неуникальные значения, добавляемые в таблицу базы данных

Есть смысл? В основном, когда вы говорите, что хотите иметь уникальное значение, первое введенное вами значение останется единственным значением (если вы не обновите или не удалите его).

Если, с другой стороны, вы не указываете, что хотите, чтобы оно было уникальным, то вы можете хранить столько значений, сколько хотите, с помощью термина ID и метаключа.

Это, однако, ведет к извлечению информации и ее удалению из базы данных; мы рассмотрим это более подробно позже в этой статье.

Функция API update_term_meta предоставляет нам несколько приятных опций. Во-первых, это дает нам возможность добавить одну уникальную запись в базу данных без необходимости использовать четвертый параметр add_post_meta .

Во-вторых, это позволяет нам обновлять определенный фрагмент метаданных, если мы знаем, что было предыдущим значением. Давайте посмотрим на оба этих случая, учитывая текущее состояние нашей базы данных.

Чтобы добавить уникальные метаданные, мы можем сделать вызов, который очень похож на то, что мы видели в первом примере для add_term_meta . Вместо этого на этот раз мы используем update_term_meta . Например, просмотрите следующий код:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?php
 
add_filter( ‘the_content’, ‘tutsplus_update_term_meta’ );
function tutsplus_update_term_meta() {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        update_term_meta( $term_id, ‘update_key’, ‘my_unique_update_value’ );
    }
 
    return $content;
 
}

Обновите Hello World несколько раз, и независимо от того, сколько раз вы обновите его, вы увидите одно значение, введенное в базу данных. Если вы следуете вместе с кодом, вы должны увидеть что-то вроде этого:

Добавление метаданных через функцию update_term_meta

Но что происходит, когда существует несколько записей с одним и тем же мета-ключом, и мы хотим обновить их?

Чтобы обновить запись с тем же идентификатором термина и тем же мета-ключом, важно знать предыдущее значение. В нашем случае мы знаем, что у нас есть значение my_meta_value_1 .

Для этого мы можем обновить эту конкретную строку, указав новое значение и старое значение в функции update_term_meta . Для этого взгляните на следующий код:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?php
 
add_filter( ‘the_content’, ‘tutsplus_update_term_metas’ );
function tutsplus_update_term_metas() {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        update_term_meta( $term_id, ‘non_unique_key’, ‘my_meta_value_1_updated’, ‘my_meta_value_1’ );
    }
 
    return $content;
 
}

А затем обновите Hello World . После этого обновленное мета-значение должно выглядеть так:

Обновление неуникальных метаданных

Если вы не видите тот же результат, убедитесь, что вы правильно указали правильное имя функции в вашем хуке, идентификатор термина записи, правильный мета-ключ и правильное предыдущее мета-значение.

Чтобы получить метаданные, которые мы получили, мы можем использовать функцию get_term_meta .

Однако обратите внимание, что когда мы получаем метаданные термина, мы можем иметь дело с мета-ключом, с которым связано несколько значений. Или мы можем иметь дело с мета-ключом, который имеет только одно значение.

В зависимости от ситуации нам нужно будет указать различную информацию для функции.

Как показано в приведенном ниже коде, получить все метаданные, связанные с одним термином, легко. Главное, на что следует обратить внимание, это то, что результаты возвращаются в массиве.

В приведенном ниже примере мы будем использовать non_unique_key качестве нашего мета-ключа, поскольку с ним связано несколько значений.

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?php
 
add_filter( ‘the_content’, ‘tutsplus_get_term_metas’ );
function tutsplus_get_term_metas() {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        get_term_meta( $term_id, ‘non_unique_key’ );
    }
 
    return $content;
 
}

Вы можете выбрать вывод результатов на экран, можете использовать var_dump или использовать отладчик для просмотра информации. В любом случае, вы должны увидеть что-то вроде следующего:

1
array(3) { [0]=> string(15) «my_meta_value_0» [1]=> string(23) «my_meta_value_1_updated» [2]=> string(15) «my_meta_value_2» }

Учитывая этот вывод, вы можете сохранить его в переменной, а затем извлечь определенное значение из заданного индекса. Или, может быть, вы захотите пройтись по данным и читать или манипулировать ими.

Независимо от вашего варианта использования, именно так вы можете получить всю информацию, связанную с мета-ключом.

Когда мы говорим о получении одного фрагмента метаданных, мы обычно имеем в виду, что мы хотим получить одну запись из многих (как в нашем примере выше); однако могут быть случаи, когда мы хотим получить одно мета-значение, связанное с одним мета-ключом.

Мы поговорим о более позднем случае через минуту. Но сначала давайте рассмотрим случай, когда мы хотим извлечь одно значение из набора данных, имеющих одинаковый термин ID и тот же мета-ключ.

Обратите внимание, что в приведенном ниже коде мы передаем четвертое значение true :

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?php
 
add_filter( ‘the_content’, ‘tutsplus_get_term_meta’ );
function tutsplus_get_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        get_term_meta( $term_id, ‘non_unique_key’, true );
    }
 
    return $content;
 
}

И вот что возвращается:

1
string(15) «my_meta_value_0»

Обратите внимание, что он возвращает первое найденное значение и делает это в форме строки.

Если есть только одна запись, то у вас есть два варианта:

  1. Вы можете получить информацию без указания true .
  2. Вы можете получить информацию, указав true .

Если вы выберете первый случай, вы получите обратно массив с одним индексом и одним значением. Поэтому вам нужно извлечь значение из результата, выполнив что-то вроде $value = $result[ 0 ] предполагая, что вы сохраняете результат вызова функции в $result .

С другой стороны, если вы выберете второй вариант, вы можете ожидать, что результат будет возвращен вам в виде string .

Возможно, самое важное, что нужно отметить при приближении к значениям этой конкретной стратегии, это то, что значения уникальны, учитывая их мета-ключ.

Наконец, нам нужно взглянуть на удаление связанных метаданных. И, в соответствии с остальными нашими примерами, это зависит от того, есть ли несколько частей метаданных, связанных с мета-ключом, или одно мета-значение, связанное с одним мета-ключом.

Если вы знаете, что существует один мета-ключ, с которым связано несколько значений, вы можете использовать следующий код:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?php
 
add_filter( ‘the_content’, ‘tutsplus_delete_term_metas’ );
function tutsplus_delete_term_metas( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        delete_term_meta( $term_id, ‘non_unique_key’ );
    }
 
    return $content;
 
}

И это обновит таблицу базы данных так, что она будет выглядеть так:

Удаление нескольких строк информации в базе данных

Если вы non_unique_key за non_unique_key , то знаете, что это удалило все данные, связанные с мета-ключом non_unique_key .

Если вы хотите удалить одну запись, то есть два способа сделать это:

  1. Вы знаете мета-значение, связанное с мета-ключом, который вы хотите удалить.
  2. Значение, связанное с указанным мета-ключом, уникально в том смысле, что мета-ключ и мета-значение являются уникальными.

Для этого мы рассмотрим первый пример в этом разделе и рассмотрим второй пример в этом разделе.

Чтобы удалить одну запись, в которой мы знаем связанное мета-значение, мы можем написать код, который определяет и мета-ключ, и мета-значение. Например:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?php
 
add_filter( ‘the_content’, ‘tutsplus_delete_term_meta’ );
function tutsplus_delete_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        delete_term_meta( $term_id, ‘my_meta_key’, ‘my_meta_value’ );
    }
 
    return $content;
 
}

Это удалит строку, связанную с этой информацией, из базы данных.

Наконец, если есть одна уникальная запись, в которой вы знаете мета-ключ, но не знаете мета-значение, вы все равно можете удалить эту запись из базы данных.

Все, что вам нужно указать в исходном коде, это мета-ключ. Смотрите в следующей функции:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
<?php
 
add_filter( ‘the_content’, ‘tutsplus_delete_single_term_meta’ );
function tutsplus_delete_single_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        delete_term_meta( $term_id, ‘update_key’ );
    }
 
    return $content;
 
}

Проницательные читатели, вероятно, поймут, что приведенная выше функция — это то же самое определение функции, которое мы предоставили при удалении записей, которые имеют все несколько значений. И это потому, что они одинаковы.

Разница, однако, заключается в предназначении функции. Намерение функции часто определяет, как мы называем функцию. В предыдущем случае мы хотели удалить все термины метаданные. В этом случае мы хотели удалить один фрагмент метаданных термина.

Это имеет значение, когда речь идет о написании качественного кода и когда речь идет о написании модульных тестов .

Здесь вы найдете весь код, который мы использовали в этом посте, а также дополнительные комментарии, объясняющие, что происходит в коде. Помните, что все эти функции подключены к the_content , что означает, что функции будут the_content каждый раз при загрузке сообщения.

Таким образом, вызовы add_filter закомментированы, так что вы можете включить их при необходимости.

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
030
031
032
033
034
035
036
037
038
039
040
041
042
043
044
045
046
047
048
049
050
051
052
053
054
055
056
057
058
059
060
061
062
063
064
065
066
067
068
069
070
071
072
073
074
075
076
077
078
079
080
081
082
083
084
085
086
087
088
089
090
091
092
093
094
095
096
097
098
099
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
<?php
 
//add_filter( ‘the_content’, ‘tutsplus_add_term_meta’ );
/**
 * If we’re on the first post and in the category having the
 * ID of ‘2’, then we add a unique meta key and meta value to
 * the term metadata.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_add_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        add_term_meta( $term_id, ‘my_meta_key’, ‘my_meta_value_changed’, true );
    }
 
    return $content;
 
}
 
//add_filter( ‘the_content’, ‘tutsplus_add_term_metas’ );
/**
 * If we’re on the first post and in the category having the
 * ID of ‘2’, then we add multiple meta values with the same
 * meta key to the term metadata.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_add_term_metas( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
 
        for ( $i = 0; $i < 3; $i++ ) {
 
            $meta_value = «my_meta_value_$i»;
            add_term_meta( $term_id, ‘non_unique_key’, $meta_value );
        }
    }
 
    return $content;
 
}
 
//add_filter( ‘the_content’, ‘tutsplus_update_term_meta’ );
/**
 * Updates the term meta value with the specified key.
 * doesn’t exist, then the record will be created.
 * be added if the ‘Hello World’ page is loaded with the category
 * having the ID of ‘2’.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_update_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        update_term_meta( $term_id, ‘update_key’, ‘my_unique_update_value’ );
    }
 
    return $content;
 
}
 
//add_filter( ‘the_content’, ‘tutsplus_update_term_metas’ );
/**
 * Updates the existing value for the metadata that has the ‘non_unique_key’
 * meta key with the specified meta value.
 * post with the ID of one and it has the category ID of ‘2’.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_update_term_metas( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        update_term_meta( $term_id, ‘non_unique_key’, ‘my_meta_value_1_updated’, ‘my_meta_value_1’ );
    }
 
    return $content;
 
}
 
//add_filter( ‘the_content’, ‘tutsplus_get_term_metas’ );
/**
 * If we’re on the first post and the post has the category ID of ‘2’ then
 * retrieve the term meta in the form of an array.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_get_term_metas( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        get_term_meta( $term_id, ‘non_unique_key’ );
    }
 
    return $content;
 
}
 
//add_filter( ‘the_content’, ‘tutsplus_get_term_meta’ );
/**
 * If we’re on the first post and the post has the category ID of ‘2’ then
 * retrieves the first value from the metadata as a string.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_get_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        get_term_meta( $term_id, ‘non_unique_key’, true );
    }
 
    return $content;
 
}
 
//add_filter( ‘the_content’, ‘tutsplus_delete_term_metas’ );
/**
 * If we’re on the first post and the post has the category ID of ‘2’ then
 * deletes the meta values associated with the specified key.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_delete_term_metas( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        delete_term_meta( $term_id, ‘non_unique_key’ );
    }
 
    return $content;
 
}
 
//add_filter( ‘the_content’, ‘tutsplus_delete_term_meta’ );
/**
 * If we’re on the first post and the post has the category ID of ‘2’ then
 * deletes the specified meta value associated with the specified meta key.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_delete_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        delete_term_meta( $term_id, ‘my_meta_key’, ‘my_meta_value’ );
    }
 
    return $content;
 
}
 
//add_filter( ‘the_content’, ‘tutsplus_delete_single_term_meta’ );
/**
 * If we’re on the first post and the post has the category ID of ‘2’ then
 * deletes the meta values associated with the specified key.
 *
 * @param string $content The post content.
 * @return string The post content.
 */
function tutsplus_delete_single_term_meta( $content ) {
 
    $category = get_the_category();
    $term_id = $category[0]->term_id;
 
    if ( 1 === get_the_ID() && 2 === $term_id ) {
        delete_term_meta( $term_id, ‘update_key’ );
    }
 
    return $content;
 
}

Нередко можно найти такие функции, как эта, подключенные к другой функции, например save_post или что-то подобное. Это то, что мы рассмотрим более подробно в расширенном руководстве позже в этом году.

Для тех, кто следил за этой серией и предыдущими сериями, работающими с остальной частью API метаданных, большая часть материала, описанного в этой серии, не должна быть слишком сложной для понимания.

Пожалуй, самая сложная часть работы с этим API — это проявить свои творческие способности во многих отношениях, которые действительно могут быть использованы. Но так как мы рассмотрели, как работать с API, запустить его не должно быть очень сложно.

Помните, что в ближайшие недели мы рассмотрим современные и правильные методы записи и считывания информации в базу данных, чтобы мы могли работать с ними в производственной среде.

В то же время, если вы ищете другие утилиты, которые помогут вам создать свой растущий набор инструментов для WordPress или кода для изучения и стать более опытным в WordPress, не забудьте посмотреть, что у нас есть в Envato. Рынок

Помните, что вы можете просмотреть все мои курсы и учебные пособия на странице моего профиля , и вы можете следить за мной в моем блоге и / или Twitter по адресу @tommcfarlin, где я рассказываю о различных методах разработки программного обеспечения и о том, как мы можем использовать их в WordPress.

Пожалуйста, не стесняйтесь оставлять любые вопросы или комментарии в ленте ниже, и я постараюсь ответить на каждый из них.