Домой Wp-Recall WP-Recall: Вопросы и ответы Public Wp-Recall добавление поля для поста из custom taxonomy
15ответ(ов) в теме
evilex
не в сети 7 лет
На сайте с 23.07.2014
Участник
1
12:48

Создал фильтр:
add_filter('public_form_rcl',array(&$this,'add_ingred_input'),10);

Создал функцию:
function get_ingredients(){
$postingrs = get_the_terms( $this->post_id, 'ingredients' );
$ingrlist = '';
if ($postingrs) {
$cnt=0;
foreach((array)$postingrs as $ingr){
if(++$cnt>1)$ingrlist .= ',';
$ingrlist .= $ingr->name;
}
}
return $ingrlist;
}

Создал функцию с input:
function add_ingred_input($fls){
if($this->post_type=='recipe')
$fls .= '

Ингредиеты:

(метки вписываются через запятую)

get_ingredients().'">'
. ''
. ''
. '';
return $fls;
}

при посте записи с сайта поле Ингредиеты появилось, но при публикации в "taxonomy=ingredients&post_type=recipe" данные с него не попадают в custom taxonomy Ингредиеты

Вы не можете просматривать опубликованные ссылки

не подкинете наводку что я делаю не так или что забыл? Спасибо

0
Андрей CS
не в сети 22 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16854
2
13:35

код надо размещать в тегах code

0
evilex
не в сети 7 лет
На сайте с 23.07.2014
Участник
3
13:39

виноват, не знаю как отредактировать поправил бы, все таки как мне это поле передать в POST?

0
Андрей CS
не в сети 22 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16854
4
13:46

я не понял что за поле и куда его надо передавать.

0
evilex
не в сети 7 лет
На сайте с 23.07.2014
Участник
5
13:53

При публикации пользователем статьи с сайта данные из поле Метки: попадают в Метки записи, я создал по аналогии поле Ингредиенты и custom taxonomy Ингредиенты

Вы не можете просматривать опубликованные ссылки

При нажатии кнопки Опубликовать, нужно чтобы данные из поля Ингредиенты

Вы не можете просматривать опубликованные ссылки

попали в Ингредиенты записи

Вы не можете просматривать опубликованные ссылки

(по аналогии с метками), как включить это поле при POST?

0
Андрей CS
не в сети 22 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16854
6
14:01

опять ничего не понятно. Вы сами пробовали перейти по ссылкам в сообщении? 404

0
evilex
не в сети 7 лет
На сайте с 23.07.2014
Участник
7
14:03

не знаю как лучше пояснить, ссылки работают, вот их аналог

Вы не можете просматривать опубликованные ссылки

Вы не можете просматривать опубликованные ссылки
0
Андрей CS
не в сети 22 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16854
8
14:06

evilex сказал(а)

ссылки работают

у меня не работают.
Мне не нужны ссылки на картинки, нужен код добавленного поля

0
evilex
не в сети 7 лет
На сайте с 23.07.2014
Участник
9
14:08

[code]
add_filter('public_form_rcl',array(&$this,'add_ingred_input'),10,1);
[/code]

как теги код прописать эти не работают

0
Андрей CS
не в сети 22 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16854
10
14:12

это просто фильтр, я просил код добавленного поля.

0
Андрей CS
не в сети 22 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16854
11
14:12

evilex сказал(а)

как теги код прописать эти не работают

html-теги

0
evilex
не в сети 7 лет
На сайте с 23.07.2014
Участник
12
14:13

add_filter('public_form_rcl',array(&$this,'add_ingred_input'),10,1);

	function add_ingred_input($fls){
		
        if($this->post_type=='recipe')
            $fls .= '<table>
                <tr>
                    <td>
                    <label>
                        Ингредиеты: 
                        <small>
                            (метки вписываются через запятую)
                        </small>
                    </label>
                    </td><td>
						<input type="text" name="ingredients" id="new-tag-ingredients" value="'.$this->get_ingredients().'">'
                    . '</td>'
                . '</tr>'
                . '</table>';
        
        return $fls;
    }

	function get_ingredients(){
        $postingrs =  get_the_terms( $this-&gt;post_id, 'ingredients' );
        $ingrlist = '';
        if ($postingrs) {
            $cnt=0;           
            foreach((array)$postingrs as $ingr){
                if(++$cnt&gt;1)$ingrlist .= ',';
                $ingrlist .= $ingr-&gt;name;
            }
        }
        return $ingrlist;
    }

0
evilex
не в сети 7 лет
На сайте с 23.07.2014
Участник
13
14:23

    register_taxonomy('ingredients','recipe',array(
         'label' => 'Ингредиенты'
        ,'hierarchical' => false
        ,'show_admin_column' => true
        ,'show_in_nav_menus' => false
        ,'show_ui' => true
        ,'show_tagcloud' => true
        ,'query_var' => true
		,'exclude_from_search' => true
        ,'rewrite' => array('slug' => 'ingredient', 'with_front' => false)
    ));

0
Андрей CS
не в сети 22 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16854
14
15:04

данные из поля

<input type="text" name="ingredients" id="new-tag-ingredients">

будут находится внутри $_POST['ingredients'], получите и обработайте эти данные в функции предварительно подключив ее к action "pre_update_postdata_rcl"
Функция получит массив данных публикации перед созданием публикации

Вы не можете просматривать опубликованные ссылки

, дополните этот массив своей таксономией и верните массив далее на обработку. Массив надо дополнить данными "tax_input"

0
evilex
не в сети 7 лет
На сайте с 23.07.2014
Участник
15
15:28

Огромное спасибо, все получилосьCool

0
Тема закрыта. Публикация новых сообщений запрещена.