
Recherche avancée
Médias (1)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (52)
-
Use, discuss, criticize
13 avril 2011, parTalk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
A discussion list is available for all exchanges between users. -
L’espace de configuration de MediaSPIP
29 novembre 2010, parL’espace de configuration de MediaSPIP est réservé aux administrateurs. Un lien de menu "administrer" est généralement affiché en haut de la page [1].
Il permet de configurer finement votre site.
La navigation de cet espace de configuration est divisé en trois parties : la configuration générale du site qui permet notamment de modifier : les informations principales concernant le site (...) -
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community.
Sur d’autres sites (9341)
-
How to publish your plugin or theme on the Piwik Marketplace – Introducing the Piwik Platform
25 septembre 2014, par Thomas Steur — Community, DevelopmentThis is the next post of our blog series where we introduce the capabilities of the Piwik platform. Over the last weeks we have already introduced you to some of the basics on how to create plugins and themes. This time you’ll learn how to publish a plugin or theme on the Piwik Marketplace to share it with all Piwik users.
What is the Piwik Marketplace ?
The Marketplace is a showcase for all plugins and themes that can be used in Piwik. You can browse them either on a standalone website or in Piwik itself by going to Settings => Marketplace. There you can install and update them with just one click. Easy as that ! While some of those plugins are provided by Piwik or Piwik PRO most of them are created and maintained by our community. Everyone is very welcome to distribute plugins or themes on the Marketplace.
Prerequisites
To publish your plugin on the Marketplace you simply need to meet these requirements :
- The plugin name is not already taken by another plugin
- The code of the plugin is hosted in a public GitHub repository
- The GitHub service “Piwik plugins” for this repository is enabled (Repository Settings => Webhooks & Services => Add Service)
- Push permission for this repository
- The plugin is free (as in not paid)
- The license must be compatible with the GNU General Public License v3 or any later version
There is also list of Rules for plugins.
Best practices
Before actually distributing your plugin we recommend to follow a couple of best practices to make sure your plugin looks good on the Marketplace and provides useful information for your future users. If you have used the console to generate a plugin the needed files were already created for you.
Provide a good description
Make sure there is a file named
README.md
in the root of your plugin. When preparing your plugin for the Marketplace we will search for four sections in this file : Description, FAQ, Changelog and Support. Each of those is optional but it is good practice to provide at least a section Description and Support by prefixing them with##
. Any content of your readme outside of those sections will not be displayed on the Marketplace.# Piwik Plugin Name
## Description
Add your plugin description here.
## Support
Please direct any feedback to hello@piwik.org.
If you experience any issues feel free to file an issue at https://github.com/piwik/piwik/issues .A good example can be seen in the README.md of the CustomAlerts plugin and the related CustomAlerts plugin page.
Provide screenshots
This will improve your appearance in the Marketplace a lot and users will be more likely install your plugin. It is as easy as placing “png” or “jpg” files in a folder named
screenshots
. The filename of each image will be shown in the UI with underscores replaced by a whitespace. This way you can provide a nice description. Have a look at the CustomAlerts plugin to see how it works.Provide contact details
Your contact details are specified in the
plugin.json
file of your plugin root folder. Providing at least one author and a link to your homepage is required. If you do not have a website you can use a link to your GitHub profile. This helps your users contact you in case they want to thank you for your great work or if they have any problem with it. An example plugin.json looks like this :{
"name": "MyPluginName",
"homepage": "http://piwik.org",
"authors": [
{
"name": "Piwik",
"email": "hello@piwik.org",
"homepage": "http://piwik.org"
}
],
"support": {
"email": "hello@piwik.org",
"issues": "https://github.com/piwik/piwik/issues",
"forum": "http://forum.piwik.org",
"wiki": "https://github.com/piwik/piwik/wiki",
"irc": "#piwik-dev"
}
}Choose a license
Choosing the right license that works best for you and your users is important. To distribute a plugin via the Piwik Marketplace the license must be compatible with the GNU General Public License v3 or any later version. If you do not specify a license anywhere in your plugin, it is assumed your plugin uses GPLv3 or later. The license must be specified in the
plugin.json
file using the propertylicense
:{
"name": "MyPluginName",
"license": "GPL v3+"
}Provide donation links
You can define a donation link or email for PayPal, Flattr and Bitcoin in the
plugin.json
file. Users that love your work will then be able to donate you money directly from the plugin page.{
"name": "MyPluginName"
"donate": {
"paypal": "sponsor@piwik.org",
"flattr": "https://flattr.com/profile/piwik",
"bitcoin": "1234567890"
}
}How to publish the first version of your plugin
We are trying to make it as easy as possible for you to publish your plugin on the Marketplace. That’s why we don’t require any logins or packaging. To publish your plugin you only have to create a new tag of your plugin and within a minute your plugin will be ready to be installed on hundreds of thousands of Piwik installations.
To tag your plugin you can use one of the following two suggestions :
Using the command line
git tag 0.1.0 && git push --tags
Where “0.1.0” is the name of the tag. While you can use any tag name it is best practice to use the current version number as defined in the
plugin.json
file.Using GitHub UI
To tag a new version via GitHub click on Releases => Draft a new release.
Now you can enter a tag name (version) and press “Publish release” as shown in this screen. That’s it !
How to provide an update for your plugin
To provide an update you only have to increase the version number in the file
plugin.json
and create another tag as explained in the previous section. Your new Plugin update will be visible on the Marketplace within a minute or so. It might take a bit longer until the update appears in Piwik itself as each Piwik server only checks for updates every few hours.For a complete list of information go to our Distributing Your Plugin guide in the Piwik Developer Zone.
If you have any feedback regarding our APIs or our guides in the Developer Zone feel free to let us know.
-
[Aug-Sept 2013] Piwik 2.0 Development Update !
3 octobre 2013, par Fabian Becker — DevelopmentThis Development Update is the first in a new series of posts we’ll be writing to keep you, our loyal users, informed of our efforts. We hope these updates keep you excited about Piwik’s future, and if you’re a developer, we hope they inspire and challenge you to accomplish more yourself !
Despite this being our first update, it will probably be one of our biggest. We’ve gotten a lot done as we race towards the Piwik 2.0 release ! Just see for yourself :
What we’ve accomplished
Theming
Piwik now supports theming, a feature that was requested often in the past. Because of our switch to the Twig template engine and other major code changes it is now possible to change the way Piwik looks. Additionally, developers can use the dynamic stylesheet language LESS, instead of CSS. Piwik will automatically transform the LESS code into CSS.
Piwik 2.0 will ship with a new dark theme called PleineLune (french for Full Moon) that makes use of the new theming feature. Another theme with a left-aligned menu was created during the Piwik Meetup in Paris. Both of these themes were created by Thomas Zilliox, a very talented designer and CSS expert.
PHP 5.3 Namespaces
For Piwik 2.0 we decided to make use of namespaces, a feature introduced in PHP 5.3. The usage of namespaces makes our code more readable and allows us to better modularize the platform. This is in part why we are raising the required minimum PHP version to 5.3 for Piwik 2.0. (Remember to update your server !)
Translations in JSON
All translations are now stored in JSON files which makes storing translations in Piwik a lot cleaner that the giant PHP array we previously used.
Side note : if you’d like to make Piwik available to more languages, please sign up at translations.piwik.org. We’d love to have your help !
UI Tests
We now use UI tests to make sure that changes to the code don’t break the UI. UI tests use PhantomJS and CutyCapt and are automatically executed on Travis CI. Whenever an integration test fails the script produces a screenshot diff that shows the difference. Learn more.
AnonymizeIP supports IPv6
The AnonymizeIP plugin now masks IPv6 addresses. The concept of the config option ‘ip_address_mask_length’ has now changed to reflect the level of masking that should be applied to the IP. With a masking level of 1 Piwik will mask the last octet of an IPv4 address and the last 80 bits of an IPv6 address.
All Websites Dashboard usable with 20,000+ Websites
The All Websites Dashboard is now usable even if you track many thousands of websites in your Piwik instance. We rewrote parts of the archiving process in order to make this possible. Making Piwik fast and memory efficient is a constant concern for core developers.
Plugins can now add new Visualizations
Piwik Plugins and Themes can now create new visualizations for your report data. They can also specify their own ViewDataTable footer icons or modify existing ones. This will allow plugin developers to create new ways for you to view your data, customize existing reports so they look great in new visualizations and provide extra analytics functionality accessible in each of your reports.
The new TreemapVisualization plugin makes use of this feature to let you view your reports as treemaps. It serves as an example of this new functionality.
Piwik Marketplace
The Piwik Marketplace is a new platform developers can use to publish their plugins and themes so all Piwik users can easily access them. The marketplace is hosted at plugins.piwik.org and is currently in an early development state, but we’re already able to host plugins !
Developers can easily publish their plugins by adding a commit hook to their Github repositories. Every time you push a new tag, the marketplace will make a new version of your plugin available. The marketplace will provide a centralized platform to search for plugins and also provide statistics on plugin usage.
Install Plugins and Themes in one click from within Piwik
Piwik has offered since the beginning the much-loved “one click update” feature. We are bringing the same functionnality to the Marketplace : you will be able to install Plugins and Themes in one click directly within the Piwik interface ! Similarly to WordPress or Firefox, Piwik will let you extend the functionnality of your analytics platform.
Conclusion
In Piwik 2.0 you will be able to install plugins and themes from the marketplace. And, if you’re so inclined, you will be able to create and host your own plugins/themes on the marketplace so everyone can use them. This is by far the accomplishment we are most excited by… the possibilities it opens up for Piwik’s future are truly unlimited. We hope you share our excitement !
Au revoir, until next time !
PS : our mission is to liberate web analytics ; thank you for sharing the word about Piwik 2.0 !
-
Evolution #3926 : Remplacement de safehtml par le plug htmlpurifier ou autre
14 janvier 2019, par Guillaume FahrnerSorry je n’avais pas vu ce message :
cedric - a écrit :
Depuis https://core.spip.net/projects/spip/repository/revisions/24131 le plugin HTMLPurifier est fonctionel sans nécessiter de patch dans le core ?
Malheureusement si : il reste une surcharge de la fonction propre() via inc/texte.php. Elle est utilisée pour réaliser la protection HTML via echappe_html() AVANT le 1er filtrage de sécurité via echapper_html_suspect(). Un deuxième est réalisé via echappe_retour_modeles($t, $interdire_script) ou $interdire_script est vrai en espacé privé ou si le mode parano actif et faux sinon. (Je n’ai pas su faire autrement, mais il y a peut être une astuce a trouver.)
Je ne sais pas si tu considères que c’est le core mais une surchage des règles YAML de textwheel est également réalisé afin que l’on envoi bien tout qui doit l’être dans les filtres de sécurité.
Donc non pas de modification du core nécessaire pour que le plugin fonctionne. A voir si ces surcharges mériterais une "intégration directe" future.
on est bon et on peut release tel quel en indiquant que le plugin htmlpurifier est disponible pour tests et se laisser le temps ?
A mon avis oui. Pour rappel : le mode parano est actuellement inutilisable avec l’actuel safehtml(). Du coup ça peut être une approche pour l’intégrer/le tester au fil de l’eau : commencé par les gens qui utilisent le mode parano en leur recommandant chaudement/forcant ce plugin.
Ci dessous la liste des plugins que j’utilise sans problème hors textwheel/todo (cf https://core.spip.net/issues/4254) avec htmlPurifier :
Abonnements 3.3.6 - stable
Agenda 3.26.0 - stable
API de vérification 1.8.1 - stable
API Prix 0.1.16 - dev
Article PDF 1.0.10 - stable
Autorité 0.10.20 - stable
Banque&paiement 3.6.7 - stable
Cache Cool 0.5.4 - stable
Challenge Hacking 1.0.0 - stable
Champs Extras 3.11.7 - stable
Chatbox 1.0.5 - stable
Coloration Code 99 - stable
Commandes 1.15.5 - stable
Compositions 3.7.3 - stable
Crayons 1.26.18 - stable
CTF all the day 1.0.0 - stable
Facteur 3.6.2 - stable
Formulaire de contact avancé 0.16.5 - stable
Frimousses 1.5.1 - stable
GIS 4.44.24 - stable
HTML Purifier 5.0.0.1 - test
iCalendar 0.4.5 - test
Import ics 4.4.3 - stable
Imprimer document 0.2.2 - stable
LangOnet 1.4.6 - stable
MailShot 1.27.3 - stable
MailSubscribers 2.11.3 - stable
Markdown 1.0.2 - test
Messagerie 3.1.8 - test
Mini Calendrier 2.4.1 - stable
Mot de passe dès l’inscription 1.0.19 - stable
Newsletters 1.6.0 - stable
Nombres de visiteurs connectés 0.2.3 - stable
NoSPAM 1.5.18 - stable
Notation 2.4.2 - test
Notifications 3.6.8 - stable
Notifications avancées 0.4.2 - test
Pages 1.3.7 - stable
Pre & Code 99 - test
Saisies pour formulaires 3.11.1 - stable
Social tags 1.1.1 - stable
SPIP Bonux 3.4.6 - stable
Tip A Friend 1.6.9 - stable
Todo 2.2.1 - stable
Traduction entre rubriques 3.1.3 - stable
YAML 1.5.4 - stableJe pense que si on doit intégrer le plugin ça sera sur la version dev 3.3, pas sur la version stable, et ça va demander de prendre le temps de voir toutes les modifs et les impacts éventuels que tu n’aurais pas vu ou auxquelles tu n’aurais pas pensé.
Clairement je pense me faire insulter :-) Je suis prêt ^^ Plus sérieusement il faut absolument tester/restester/reretester. J’ai tenté de faire au mieux mais je ne peux pas revoir tout le code HTML généré par les plugins... Au moindre écart de conformité HTML ca ne passera pas. Le bug https://core.spip.net/issues/4254 en est un bon exemple : avec htmlpurifier l’élément
est supprimé ; avec "safehtml() standard" le code invalide est conservé et c’est le navigateur qui va corriger.
Il faut voir les bons cotés : cela force les bonnes pratiques, met SPIP au plus haut niveau du standard (Drupal fait moins bien), aide a identifier des bugs et ce qui passe dans propre() sera obligatoirement valide. C’est aussi a terme moins de problèmes d’injection XSS a traiter pour la team.
Sur la fonction de survol des logos le sujet reste ouvert ? On est en effet d’accord que cette écriture est obsolète et devrait être revue de toute façon, mais c’est donc un point à traiter dans le core le cas échéant
Euh je comprend pas, faut-il intégrer le patch des puces de statut dans ce plugin ? Je pensais plus coder le truc """proprement""" avec un JS dans le directement dans /prive/. A décolérer complètement à mon sens.
Encore merci pour le temps que tu y passes :)