Plugin basico para agregar una nota administrable en WORDPRESS
Languages
Podemos clonar el plugin con el siguiente comando:
git clone https://github.com/grisuno/wp-postit.git
Plugin básico para agregar una nota administrable en donde se inserte el short code [postit] con la función do_shortcode de wordpress para dejar el post-it en cualquier parte de nuestro template el mismo es arrastrable para no obstaculizar la visualización del contenido del sitio web, y también tiene la capacidad de cerrarse mediante el botón cerrar en la esquina superior derecha el autor es GrisUNO grisuno@gmail.com por si quieres invitarme a una cerveza. la url del proyecto por si quieres participar es: https://github.com/grisuno/wp-postit
/*
wp-postit/postit-update.php /
*/
<?php
function wp_postit_update() {
global $wpdb;
$table_name = $wpdb->prefix . "postit";
$id = $_GET["id"];
$nota = $_POST["nota"];
$activa = $_POST["activa"];
$created = $_POST["created"];
//update
if (isset($_POST['update'])) {
$wpdb->update(
$table_name, //table
array('nota' => $nota, 'activa' => $activa), //data
array('ID' => $id), //where
array('%s'), //data format
array('%s') //where format
);
}
//delete
else if (isset($_POST['delete'])) {
$wpdb->query($wpdb->prepare("DELETE FROM $table_name WHERE id = %s", $id));
} else {//selecting value to update
$postit = $wpdb->get_results($wpdb->prepare("SELECT id,nota,activa,created from $table_name where id=%s", $id));
foreach ($postit as $s) {
$nota = $s->nota;
$activa = $s->activa;
}
}
?>
<link type="text/css" href="<?php echo WP_PLUGIN_URL; ?>/wp-postit/style-admin.css" rel="stylesheet" />
<div class="wrap">
<h2>Post-it</h2>
<?php if ($_POST['delete']) { ?>
<div class="updated"><p>Postit Borrado</p></div>
<a href="<?php echo admin_url('admin.php?page=wp_postit_list') ?>">« De vuelta a la lista de postit </a>
<?php } else if ($_POST['update']) { ?>
<div class="updated"><p>Postit Actualizado</p></div>
<a href="<?php echo admin_url('admin.php?page=wp_postit_list') ?>">« De vuelta a la lista de postit </a>
<?php } else { ?>
<div class="row">
<table class='wp-list-table widefat fixed striped posts'>
<tr>
<th class="manage-column ss-list-width">Activa debe estar en 1 para que se visualice en el shorttag <?= do_shortcode('[postit]'); ?></h1></th>
</tr>
</div>
<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
<table class='wp-list-table widefat fixed'>
<tr><th>Nota</th><td><input type="text" name="nota" value="<?php echo $nota; ?>"/></td></tr>
<tr><th>Activa</th><td><input type="text" name="activa" value="<?php echo $activa; ?>"/></td></tr>
</table>
<input type='submit' name="update" value='Grabar' class='button'>
<input type='submit' name="delete" value='Borrar' class='button' onclick="return confirm('¿Estás seguro de borrar este elemento?')">
</form>
<?php } ?>
</div>
<?php }
/* wp-postit/postit-list.php */
<?php
function wp_postit_list() {
?>
<link type="text/css" href="<?php echo WP_PLUGIN_URL; ?>/wp-postit/style-admin.css" rel="stylesheet" />
<div class="wrap">
<h2>Post-it</h2>
<div class="tablenav top">
<div class="alignleft actions">
<a href="<?php echo admin_url('admin.php?page=wp_postit_create'); ?>">Nuevo Post-It</a>
</div>
<br class="clear">
</div>
<div class="row">
<table class='wp-list-table widefat fixed striped posts'>
<tr>
<th class="manage-column ss-list-width">
<h1>Usar el shorttag de la siguiente manera <?= do_shortcode('[postit]'); ?>
</h1></th>
</tr>
</div>
<?php
global $wpdb;
$table_name = $wpdb->prefix . "postit";
$rows = $wpdb->get_results("SELECT id,nota,activa,created from $table_name");
?>
<table class='wp-list-table widefat fixed striped posts'>
<tr>
<th class="manage-column ss-list-width">ID</th>
<th class="manage-column ss-list-width">Nota</th>
<th class="manage-column ss-list-width">Activa</th>
<th class="manage-column ss-list-width">Creada</th>
<th> </th>
</tr>
<?php foreach ($rows as $row) { ?>
<tr>
<td class="manage-column ss-list-width"><?php echo $row->id; ?></td>
<td class="manage-column ss-list-width"><?php echo $row->nota; ?></td>
<td class="manage-column ss-list-width"><?php echo $row->activa; ?></td>
<td class="manage-column ss-list-width"><?php echo $row->created; ?></td>
<td><a href="<?php echo admin_url('admin.php?page=wp_postit_update&id=' . $row->id); ?>">Actualizar</a></td>
</tr>
<?php } ?>
</table>
</div>
<?php
}
/*
wp-postit/postit-create.php /
*/
<?php
function wp_postit_create() {
$id = $_GET["id"];
$nota = $_POST["nota"];
$activa = $_POST["activa"];
$created = $_POST["created"];
//insert
if (isset($_POST['insert'])) {
global $wpdb;
$table_name = $wpdb->prefix . "postit";
$wpdb->insert(
$table_name, //table
array('nota' => $nota, 'activa' => $activa), //data
array('%s', '%s') //data format
);
$message.="Post-it Agregado";
}
?>
<link type="text/css" href="<?php echo WP_PLUGIN_URL; ?>/wp-postit/style-admin.css" rel="stylesheet" />
<div class="wrap">
<h2>Agregar Nuevo Post-it</h2>
<?php if (isset($message)): ?><div class="updated"><p><?php echo $message; ?></p></div><?php endif; ?>
<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
<div class="row">
<table class='wp-list-table widefat fixed striped posts'>
<tr>
<th class="manage-column ss-list-width">Activa debe estar en 1 para que se visualice en el shorttag <?= do_shortcode('[postit]'); ?></h1></th>
</tr>
</div>
<table class='wp-list-table widefat fixed'>
<tr>
<th class="ss-th-width">postit</th>
<td><input type="text" name="name" value="<?php echo $nota; ?>" class="ss-field-width" /></td>
</tr>
<tr>
<th class="ss-th-width">Activa</th>
<td><input type="text" name="activa" value="<?php echo $activa; ?>" class="ss-field-width" /></td>
</tr>
</table>
<input type='submit' name="insert" value='Grabar' class='button'>
</form>
</div>
<?php
}
Comentarios
Publicar un comentario