Go to main content

Textpattern CMS support forum

You are not logged in. Register | Login | Help

#1 2010-01-15 18:30:29

milosevic
Member
From: Madrid, Spain
Registered: 2005-09-19
Posts: 390

[es-es] Publicar / Editar un artículo desde el frontal

Hola:

Esta pregunta es para nota y supongo que no tendrá una respuesta sencilla, pero busco almenos pistas para ver por dónde empezar.

Lo que quiero es que un no usuario se registre en el site (eso con mem_self_register queda cubierto), pero no me vale que tenga que logar en el administrador de textpattern, no quiero que lo haga ni el usuario tampoco, lo que quiero es que pueda, desde una página que gestionaría el acceso con login (también hay plugins para eso) editar / crear SUS propios artículos.

El tema parece tan sencillo como crear una página con un formulario, pero claro ¿a qué función debe atacar ese formulario para guardar el artículo?

Esta es la gran duda, luego seguro que van surgiendo más

Gracias de antemano.


<txp:rocks/>

Offline

#2 2010-01-17 19:49:23

juanjonavarro
Plugin Author
From: Valencia, Spain
Registered: 2005-05-16
Posts: 485
Website

Re: [es-es] Publicar / Editar un artículo desde el frontal

Yo esto lo he hecho alguna vez y no hay que utilizar ninguna función, más allá de utilizar el propio safe_insert para insertar un nuevo registro en la tabla “textpattern” (que es donde se guardan los artículos). Es bastante sencillo y los campos de la tabla son auto-explicativos. Si tienes dudas con alguno, coméntalo por aquí a ver si puedo ayudarte.

Offline

#3 2010-01-17 19:51:52

juanjonavarro
Plugin Author
From: Valencia, Spain
Registered: 2005-05-16
Posts: 485
Website

Re: [es-es] Publicar / Editar un artículo desde el frontal

Un ejemplo que utilicé para una migración de datos:

safe_insert(
			   "textpattern",
			   "Title           = '$titulo',
				Body            = '$textocompleto',
				Body_html       = '$textocompleto',
				Excerpt         = '$textitem',
				Excerpt_html    = '$textitem',
				Image           = '$imagen##$altimagen##$imagen2',
				Keywords        = '$refer',
				Status          =  $status,
				Posted          =  '$fecha',
				AuthorID        = 'angel',
				LastMod         =  '$fecha',
				LastModID       = 'angel',
				Section         = '$seccion',
				textile_body    =  0,
				textile_excerpt =  0,
				Annotate        =  0,
				url_title       = '$url',
				AnnotateInvite  = 'Comentarios',
				custom_1 = '$audio',
                                custom_2 = '$peso',
                                custom_3 = '$duracion',
                                custom_4 = '$entrevistado',
				uid             = '".md5(uniqid(rand(),true))."',
				feed_time       ='$fecha'"
			);

Offline

#4 2010-01-18 09:33:05

milosevic
Member
From: Madrid, Spain
Registered: 2005-09-19
Posts: 390

Re: [es-es] Publicar / Editar un artículo desde el frontal

Mil gracias Juanjo, lo provaré en cuanto pueda.

¿Me serviría safe_insert para editar un artículo ya existente o sólo para crear uno nuevo?

A mi es que me sacas de <txp:lo-que-sea> y no tengo ni idea…


<txp:rocks/>

Offline

#5 2010-01-18 10:05:59

juanjonavarro
Plugin Author
From: Valencia, Spain
Registered: 2005-05-16
Posts: 485
Website

Re: [es-es] Publicar / Editar un artículo desde el frontal

Para editar uno existente, debes usar safe_update

Offline

#6 2010-01-28 15:08:33

milosevic
Member
From: Madrid, Spain
Registered: 2005-09-19
Posts: 390

Re: [es-es] Publicar / Editar un artículo desde el frontal

Hola Juanjo:

He empezado a jugar con estas funciones, pero tengo una duda ¿Si sólo quiero cambiar algún campo al editar un post (pongamos el título y el body, por ejemplo) tengo que poner todos los parámetros igualmente y asignarles un valor?

De ser así, me crean dudas estos dos campos:

Image = ‘$imagen##$altimagen##$imagen2’, <— aquí no veo claro qué valores debo inyectar ¿##id-de-la-imagen##texto-alternativo para cada imagen que tenga el artículo?

Posted = ‘$fecha’ <— este seguro que tiene su aquel, porque será un patrón de fecha concreto supongo ¿no?


<txp:rocks/>

Offline

#7 2010-01-28 15:27:12

juanjonavarro
Plugin Author
From: Valencia, Spain
Registered: 2005-05-16
Posts: 485
Website

Re: [es-es] Publicar / Editar un artículo desde el frontal

No, si no vas a modificar un campo no hace falta que lo pongas (en el update).

En el campo Image debes poner exactamente lo que pondrías desde Txp. Normalmente el número. Eso que ves ahí era una cosa rara que yo monté para poder hacer uso de unas imágenes ya metidas en directorios, para no tener que subirlas a TxP, porque aquí se estaban migrando registros de otra bbdd.

La parte de fecha es lo que te admita MySQL. Por ejemplo, creo que ’2010-01-28’ funcionaría.

Un saludo.

Offline

#8 2010-02-09 13:13:06

jinchos
New Member
From: El Boalo
Registered: 2010-02-09
Posts: 2
Website

Re: [es-es] Publicar / Editar un artículo desde el frontal

Hola juanjonavarro

Yo soy muy nuevo en esto de textpattern y aun más con la función safe_update(

tengo el siguiente bloque pero no me almacena los cambios, seguro que es una tontería que no veo
<txp:php>
$titulo = $_POST[‘TITULO’];
echo “nuevo titulo:”;
echo $titulo;
echo “título:”;
echo $article_title;
safe_update(“textpattern”,“Title=’$article_title’”,“Title=’$titulo’”);
</txp:php>

<form action=”“ method=“post”>
<input type=“text” name=“TITULO” value=”<txp:title/>”/><br/>
<input type=“submit” name=“submit” value=“Submit me!” />
</form>

Last edited by jinchos (2010-02-09 13:54:54)

Offline

#9 2010-02-09 14:28:44

juanjonavarro
Plugin Author
From: Valencia, Spain
Registered: 2005-05-16
Posts: 485
Website

Re: [es-es] Publicar / Editar un artículo desde el frontal

Te recomiendo que pongas el modo “Depurando” (en Preferencias-> Estado de producción) . Una vez hecho esto, accedes a la página y ves el código fuente. Al final de dicho código fuente podrás ver todas las queries que se están haciendo a la bbdd. Así puedes ver, porqué no funciona la que tú estás lanzando.

Un saludo.

Offline

Board footer

Powered by FluxBB