Ceci est le code source de civblogs. civblogs est un simple annuaire qui indexe les billets provenant de la blogosphère ivoirienne. Mais vous pouvez facilement l'adapter à toute autre blogosphère.
Vous pouvez voir l'application en ligne à l'addresse : http://civblogs.akendewa.org
NB: Ce projet est encore très récent, et peut changer a tout moment.
- Connexion des utilisateurs via twitter
- Recherche des billets par catégories
- Recherche des billets par tag
- Affichage des billets recents
- Affichage des billets d'un blog
- Administration des utilisateurs
- Administrations des blogues
- Administrations des billets
- Récupération automatique des billets d'un blogue via le fill rss.
- Récupération automatique de l'apercu via Embedly.com
- Administration des catégories
Comme mentionné plus haut, ce projet est encore très récent, il y'a donc beaucoup a faire.
Dans l'immédiat, nous espérons :
- Permettre aux utilisateurs de s'abonner aux blogues directement a partir de la plateforme
- Produire un flux rss pour chaque catégorie
- Récupération automatique des billets via cron job
- Réduire le nombre de bugs
- Mettre en place les fonctionnalités suggérées par les utilisateurs sur : http://github.com/akendewa/civblogs/issues
civblogs est basé sur CakePHP et nécessite :
- php >= 5.2
- MySQL
- Une application Twitter (Pour la connexion des utilisateurs)
- Une application Embed.ly (Pour la récuperation des apercus des billets)
Commencez par télécharger le code source dans le dossier web de votre serveur php. Si vous avez Git installé sur votre machine, vous pouvez simplement faire un 'clone' du projet
git clone https://github.com/akendewa/civblogs.git
Sinon cliquez sur le bouton ZIP en haut de cette page.
Une fois que vous avez téléchargé et copié les fichiers dans le dossier web de votre serveur php, suivez les étapes suivantes.
- Créez une application Twitter à l'addresse https://dev.twitter.com/apps/new
- Assurez vous de remplir tous les champs requis et surtout le Callback URL. (Vous pouvez entrer une addresse fictive telle que http://mondomaine.com)
- Notez bien votre Consumer key et votre Consumer secret. Vous en aurez besoin pour continuer.
- Allez dans le dossier app/Config de votre application, faites une copie du fichier bootstrap.php.default. Ensuite renommez cette copie bootstrap.php
- Ouvrez bootstrap.php et à la fin du fichier, changez les valeurs Twitter.ConsumerKey et Twitter.ConsumerSecret avec les votre.
Configure::write('Twitter.ConsumerKey', 'VOTRE TWITTER CONSUMER KEY'); Configure::write('Twitter.ConsumerSecret', 'VOTRE TWITTER CONSUMER SECRET');
- Créez une application Embed.ly à l'addresse https://app.embed.ly/pricing/free
- Assurez vous de choisir le Free Plan (Plan Gratuit)
- Une fois votre application créée, notez bien votre API Key. Vous en aurez besoin pour continuer.
- Encore dans le fichier bootstrap.php et aà la fin du fichier, changez la valeur de Embedly.Key.
Configure::write('Embedly.Key', 'VOTRE EMBEDLY KEY');
On y est presque :-)
- Dans le dossier app/Config, faites une copie du fichier core.php.default. Ensuite renommez cette copie core.php
- Répérez les lignes suivantes, et changes les valeurs de ces deux variables de configuration
/** * A random string used in security hashing methods. */ Configure::write('Security.salt', 'REPLACE THIS WITH YOUR SECURITY SALT'); /** * A random numeric string (digits only) used to encrypt/decrypt strings. */ Configure::write('Security.cipherSeed', 'REPLACE THIS WITH YOUR CIPHER SEED');
Maintenant, il est temps d'installer les tables dans la base de données de l'application.
- Créez une base de données MySQL si vous ne l'avez pas encore fait.
- Dans le dossier app/Config, faites une copie du fichier database.php.default. Ensuite renommez cette copie database.php
- Changez la variable $default et entrez les paramètres de connexion à votre base de données
public $default = array( 'datasource' => 'Database/Mysql', 'persistent' => false, 'host' => 'localhost', 'login' => 'user', 'password' => 'password', 'database' => 'database_name', 'prefix' => '', //'encoding' => 'utf8', );
- Dans le dossier app, ouvrez le fichier install-tables.sql et executez toutes les commandes présentes dans ce fichier dans votre base de donné
- Si tous c'est bien passé, les tables suivantes seront créées :
blogs blogs_categories categories posts tagged tags users
Bien sur elles sont vides pour le moment.
Enfin! L'installation de votre application est terminée. si tout c'est bien passé vous pourrez voir la page d'accueil (vide pour le moment) en vous rendant á http://localhost/civblogs
Pour démarrer votre application, vous devez rajouter des blogues, et ensuite l'application vous aidera à récupérer les billets de ces blogues.
Pour pouvoir rajouter un blogue, il faut que vous ayez une compte utlisateur et un accès admin. Civblogs utlise Twitter pour authentifier les utilisateurs.
Suivez les étapes suivantes :
- Rendez vous a l'addresse http://localhost/civblogs/users/twitter_login. Vous serez redirigé vers une page Twitter.
- Autorisez votre application Twitter à avoir accès à votre compte.
- Après l'autorisation, vous serez redirigé vers la page d'accueil. Si tout c'est bien passé, vous verez votre pseudo twitter s'afficher dans la barre de menu.
Maintenant que vous avez créé votre compte utilisateur, il vous faut un accès admin.
- Si vous avez accès à phpMyAdmin, répérez dans la table users l'enregistrement de votre compte utlisateur et changer la propriété is_admin à 1.
- Sinon si vous pouvez exécuter la commande SQL suivante :
UPDATE VOTRE_DB.`users` SET `is_admin` = '1' WHERE `users`.`id` = ID_DE_VOTRE_COMPTE_UTILISATEUR;
Et voilà lorsque vous actualiser la page http://localhost/civblogs, vous avez maintenant accès au menu Admin.
Pour ajouter des donnés; dans votre annuaire vous avez 2 choix :
- Vous pouvez exécuté le fichier SQL install-data.sql dans votre base de données
- Ou rajouter des données manuellement.
Comment rajouter des données manuellement?
- Cliquer sur Admin ensuite sur Blogs
- Cliquer sur Add blog et completer le formulaire et soumettre. (Il est tr&eagrave;s important que vous remplissiez tous les champs)
- Cliquer sur Fetch rss, les articles du blogue seront récupérés
- Cliquer sur See all fetched posts. Vous aurez une liste de toutes billets de ce blogue.
- Pour chaque billet, cliquer sur fetch preview, et ensuite sur Change dans la case suivante.
Et voila! les billet s'afficheront sur votre page d'accueil!
- Régis Bamba (http://github.com/regisbamba)
Copyright 2012, Akendewa
Licensed under The MIT License Redistributions of files must retain the above copyright notice.