Вставка сообщения в использовании Wordpress MySql

См. лучший ответ recursive. Это - более горький путь.

Безумные опоры к [1 118] Darius для вдохновения на этом. Ваше большое - W (теперь мой p) было особенно умно.

w=lambda n:["zero"," ".join(_(n,0))][n>0]
_=lambda n,l:_(n//M,l+1)+[E,Z[n%M//C]+["hundred"]][n%M//C>0]+\
(p("twen thir fo"+R,"ty")[n%C//10-2]+Z[n%10]if n%C>19 else Z[n%C])+\
[E,([E,["thousand"]]+p("m b tr quadr quint","illion"))[l]][n%M>0]if n else E
p=lambda a,b:[[i+b]for i in a.split()]
E=[];R="r fif six seven eigh nine";M=1000;C=100
Z=[E]+p("one two three four five six seven eight nine ten eleven twelve","")+\
p("thir fou"+R,"teen")

я тестирую его с этим:

if __name__ == "__main__":
    import sys
    print w(int(sys.argv[1]))
    assert(w(100)=="one hundred")
    assert(w(1000000)=="one million")
    assert(w(1024)=="one thousand twenty four")
    assert(w(1048576)=="one million forty eight thousand five hundred seventy six")

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

Спойлеры ниже, rot13 'd для Вашей защиты, потому что половина забавы гольфа, выясняющего, как. Я настоятельно рекомендую расширение mnenhy Firefox для декодирования этого (и другие простые схемы кодирования) встроенный.

Pbafgnagf (V eranzrq gurz guvf erivfvba ГБ ubcrshyyl znxr gurz pyrnere.)

  • R: Gur rzcgl frg.
  • E: VF Gung juvpu va pbzzba orgjrra pbhagvat va gur "grraf" ( egrra, svsgrra, fvkgrra...) naq va gur абзац ( глоссарий e , глоссарий svs , глоссарий fvk ....)
  • Z, P: Jung gurl ner va Ebzna ahzrenyf.
  • M: Nyy gur ahzoref sebz ГБ панели gjragl.

Shapgvbaf (fbzr nyfb eranzrq guvf ebhaq)

  • j: Gur choyvp-snpvat shapgvba, juvpu gheaf n ahzore vagb jbeqf.
  • _: Erphefviryl gheaf gur ahzore vagb jbeqf, gubhfnaq-ol-gubhfnaq. a VF gur ahzore, y VF ubj sne guebhtu gur cbjref бакалавр наук 1000 младших ner. Ergheaf n yvfg бакалавр наук fvatyrgba yvfgf бакалавр наук rnpu jbeq va gur ahzore, r.t. [['bar'],['gubhfnaq'],['gjragl'],['sbhe']].
  • c: sbe rnpu jbeq va gur fcnpr-frcnengrq jbeq yvfg n, nccraqf o нФ n fhssvk naq chgf gurz rnpu vagb n fvatyrgba yvfg. Sbe rknzcyr, c("z o ge","vyyvba") == [['zvyyvba'],['ovyyvba'],['gevyyvba']].

17
задан Chuck Conway 3 November 2009 в 23:39
поделиться

3 ответа

Вы можете использовать объект Post:

// Create post object
  $my_post = array();
  $my_post['post_title'] = 'My post';
  $my_post['post_content'] = 'This is my post.';
  $my_post['post_status'] = 'publish';
  $my_post['post_author'] = 1;
  $my_post['post_category'] = array(8,39);

// Insert the post into the database
  wp_insert_post( $my_post );

Более подробную информацию можно найти здесь .

31
ответ дан 30 November 2019 в 10:39
поделиться

Your question asks how to insert a new post into WordPress using SQL. If you really wanted to do that, taking a look at the "wp" database tables and do a standard INSERT - this wouldn't be hard.

But I'd strongly recommend against doing this - even if you want to create a separate admin dashboard outside of the normal WP-provided one, you should use the core functions/API that they provide. For example, the wp_insert_post function is what you want to use.

I believe you can use/load these functions by including /wp-load.php.

14
ответ дан 30 November 2019 в 10:39
поделиться

Я начал с экспорта таблицы "wp_post", чтобы увидеть структуру - затем скопировал первый раздел и записал второй;

1: Начните с переменной, которую вы можете использовать для своей вставки оператор ($ sql)

$sql = "INSERT INTO `wp_posts` (`ID`, `post_author`, `post_date`, `post_date_gmt`, `post_content`, `post_title`, `post_excerpt`, `post_status`, `comment_status`, `ping_status`, `post_password`, `post_name`, `to_ping`, `pinged`, `post_modified`, `post_modified_gmt`, `post_content_filtered`, `post_parent`, `guid`, `menu_order`, `post_type`, `post_mime_type`, `comment_count`) VALUES ";

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

$sql .= "(' ','".$post_author."',"."'".$post_date."',"."'".$post_date_gmt."',"."'".$post_content."',"."'".$post_title."',"."'".$post_excerpt."',"."'".$post_status."',"."'".$comment_status."',"."'".$ping_status."',"."'".$posd_password."',"."'".$post_name."',"."'".$to_ping."',"."'".$pinged."',"."'".$post_modified."',"."'".$post_modified_gmt."',"."'".$post_content_filtered."',"."'".$post_parent."',"."'".$guid."',"."'".$menu_order."',"."'".$post_type."',"."'".$post_mime_type."',"."'".$comment_count."'),";

После этого используйте стандартный запрос:

$res = mysql_query($sql); if($res): print 'Successful Insert'; else: print 'Unable to update table'; endif;
6
ответ дан 30 November 2019 в 10:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: