Pages

Subscribe:

Ads 468x60px

Labels

16/01/2015

Recursos PHP, Bibliotecas, Segurança e muito mais

Impressione-se com PHP

Uma lista com curadoria de bibliotecas PHP incrivelmente impressionante, recursos e coisas brilhantes.

Table of Contents

Gerenciamento de Depêndencia

Libraries for dependency and package management.

Dependency Management Extras

Extras related to dependency management.
  • Satis - A static Composer repository generator.
  • Composition - A library to check your Composer environment at runtime.
  • Version - A parsing and comparison library for semantic versioning.
  • NameSpacer - A library to convert from underscores to namespaces.
  • Patch Installer - A library to install patches using Composer.
  • Composer Checker - A tool to validate Composer configurations.

Frameworks

Web development frameworks.
  • Symfony2 - A framework comprised of individual components.
  • Zend Framework 2 - Another framework comprised of individual components.
  • Laravel 4 - Another PHP framework.
  • Aura PHP - A framework of independent components.
  • Yii2 - Another PHP framework.
  • Nette - Another framework comprised of individual components.
  • PPI Framework 2 - An interoperability framework.
  • Phalcon - A framework implemented as a C extension.

Framework Extras

Extras related to web development frameworks.
  • Symfony CMF - A Content Management Framework to create custom CMS.
  • Knp RAD Bundle - A Rapid Application Development (RAD) bundle for Symfony 2.

Framework Components

Standalone component from web development frameworks.

Micro Frameworks

Micro frameworks and routers.
  • Silex - A micro framework built around Symfony2 components.
  • Slim - Another simple micro framework.
  • Bullet PHP - A micro framework for building REST APIs.
  • Fast Route - A fast routing library.
  • Pux - Another fast routing library.

Micro Framework Extras

Extras related to micro frameworks and routers.

Templating

Libraries and tools for templating and lexing.
  • Twig - A comprehensive templating language.
  • Twig Cache Extension - A template fragment cache library for Twig.
  • Mustache - A PHP implementation of the Mustache template language.
  • Phly Mustache - Another PHP implementation of the Mustache template language.
  • MtHaml - A PHP implementation of the HAML template language.
  • PHPTAL - A PHP implementation of the TAL templating language.
  • Plates - A native PHP templating library.
  • Lex - A lightweight template parser.

Static Site Generators

Tools for pre-processing content to generate web pages.
  • Sculpin - A tool that converts Markdown and Twig into static HTML.
  • Phrozn - Another tool that converts Textile, Markdown and Twig into HTML.

HTTP

Libraries for working with HTTP and scraping websites.
  • Guzzle - A comprehensive HTTP client.
  • Buzz - Another HTTP client.
  • Requests - A simple HTTP library.
  • HTTPFul - A chainable HTTP client.
  • Goutte - A simple web scraper.
  • PHP VCR - A library for recording and replaying HTTP requests.

URL

Libraries for parsing URLs.

Email

Libraries for sending and parsing email.

Files

Libraries for file manipulation and MIME type detection.
  • Gaufrette - A filesystem abstraction layer.
  • Flysystem - Another filesystem abstraction layer.
  • Canal - A library to determine internet media types.
  • Apache MIME Types - A library that parses Apache MIME types.
  • Ferret - A MIME detection library.
  • Hoa Mime - Another MIME detection library.
  • Lurker - A resource tracking library.
  • PHP File Locator - A library for locating files in large projects.
  • PHP FFmpeg - A wrapper for the FFmpeg video library.
  • CSV - A CSV data manipulation library.

Streams

Libraries for working with streams.
  • Streamer - A simple object-orientated stream wrapper library.

Dependency Injection

Libraries that implement the dependency injection design pattern.
  • Pimple - A tiny dependency injection container.
  • Auryn - Another dependency injection container.
  • Orno Di - Another flexible dependency injection container.
  • PHP DI - A dependency injection implementation using annotations.
  • Acclimate - A common interface to dependency injection containers and service locators.

Imagery

Libraries for manipulating images.

Testing

Libraries for testing codebases and generating test data.
  • PHPUnit - A unit testing framework.
  • DBUnit - A database testing library for PHPUnit.
  • ParaTest - A parallel testing library for PHPUnit.
  • PHPSpec - A design by specification unit testing library.
  • Codeception - A full stack testing framework.
  • AspectMock - A mocking framework for PHPUnit/Codeception.
  • Atoum - A simple testing library.
  • Mockery - A mock object library for testing.
  • Phake - Another mock object library for testing.
  • Prophecy - A highly opinionated mocking framework.
  • Faker - A fake data generator library.
  • Samsui - Another fake data generator library.
  • Alice - An expressive fixture generation library.
  • Behat - A behaviour driven development (BDD) testing framework.
  • Pho - Another behaviour driven development testing framework.
  • Mink - Web acceptance testing.
  • HTTP Mock - A library for mocking HTTP requests in unit tests.
  • VFS Stream - A virtual filesystem stream wrapper for testing.
  • VFS - Another virtual filesystem for testing.
  • Locust - A modern load test library written in Python.

Continuous Integration

Libraries and applications for continuous integration.
  • Travis CI - A continuous integration platform.
  • PHPCI - An open source continuous integration platform for PHP.
  • Sismo - A continuous testing server library.
  • Jenkins A continous integration platform with PHP support.
  • JoliCi - A continuous integration client written in PHP and powered by Docker.

Documentation

Libraries for generating project documentation.
  • Sami - An API documentation generator.
  • APIGen - Another API documentation generator.
  • PHP Documentor 2 - A documentation generator.
  • phpDox - A documentation generator for PHP projects (that is not limited to API documentation).

Security

Libraries for generating secure random numbers, encrypting data and scanning for vulnerabilities.
  • HTML Purifier - A standards compliant HTML filter.
  • RandomLib - A library for generating random numbers and strings.
  • True Random - A library that generates random numbers using www.random.org.
  • SecurityMultiTool - A PHP security library.
  • PHPSecLib - A pure PHP secure communications library.
  • TCrypto - A simple encrypted key-value storage library.
  • PHP IDS - A structured PHP security layer.
  • PHP SSH - An experimental object orientated SSH wrapper library.
  • IniScan - A tool that scans PHP INI files for security.
  • SensioLabs Security Check - A web tool to check your Composer dependencies for security advisories.
  • Zed - An integrated penetration testing tool for web applications.

Passwords

Libraries and tools for working with and storing passwords.
  • Password Compat - A compatibility library for the new PHP 5.5 password functions.
  • phpass - A portable password hashing framework.
  • PHP Password Lib - A library for generating and validating passwords.
  • Password Policy - A password policy library for PHP and JavaScript.
  • Password Validator - A library for validating and upgrading password hashes.
  • Zxcvbn PHP - A realistic PHP password strength estimate library based on Zxcvbn JS.

Code Analysis

Libraries and tools for analysing, parsing and manipulating codebases.
  • PHP Parser - A PHP parser written in PHP.
  • PHPPHP - A PHP VM implementation in PHP.
  • PHPSandbox - A PHP sandbox environment.
  • Dissect - A set of tools for lexical and syntactical analysis.
  • PHP Mess Detector - A library that scans code for bugs, sub-optimal code, unused parameters and more.
  • PHP Code Sniffer - A library that detects PHP, CSS and JS coding standard violations.
  • PHPCPD - A library that detects copied and pasted code.
  • PHP Analyser - A library for analysing PHP code to find bugs and errors.
  • PHP CS Fixer - A coding standard fixer library.
  • PHP Manipulator - A library for analysing and modifying PHP Source Code.
  • PHP Metrics - A static metric library.
  • PHP Refactoring Browser - A command line utility for refactoring PHP code.
  • UBench - A simple micro benchmark library.
  • Athletic - An annotation based benchmark framework.
  • Mondrian - A code analysis tool using Graph Theory.
  • Scrutinizer - A web tool to scrutinise PHP code.
  • PHPLOC - A tool for quickly measuring the size of a PHP project.
  • xHprof - Another profiling tool for PHP.
  • PHPCheckstyle - A tool to help adhere to certain coding conventions.

Debugging

Libraries and tools for debugging code.

Build Tools

Project build and automation tools.
  • Go - A simple PHP build tool.
  • Bob - A simple project automation tool.
  • Phake - A rake PHP clone library.
  • Box - A utility to build PHAR files.
  • Phing - A PHP project build system inspired by Apache Ant.

Task Runners

Libraries for automating and running tasks.
  • Task - A pure PHP task runner inspired by Grunt and Gulp.
  • Robo - A PHP Task runner with object-orientated configurations.
  • Bldr - A PHP Task runner built on Symfony components.

Navigation

Tools for building navigation structures.

Asset Management

Tools for managing, compressing and minifying website assets.
  • Assetic - An asset manager pipeline library.
  • Pipe - Another asset manager pipeline library.
  • Munee - An asset optimiser library.
  • JShrink - A JavaScript minifier library.
  • Puli - A library for determining assets absolute paths.

Geolocation

Libraries for geocoding addresses and working with latitudes and longitudes.
  • GeoCoder - A geocoding library.
  • GeoTools - A library of geo-related tools.
  • PHPGeo - A simple geo library.
  • GeoJSON - A GeoJSON implementation.

Date and Time

Libraries for working with dates and times.
  • Carbon - A simple DateTime API extension.
  • ExpressiveDate - Another DateTime API extension.
  • CalendR - A calendar management library.

Event

Libraries that are event-driven or implement non-blocking event loops.

Logging

Libraries for generating and working with log files.
  • Monolog - A comprehensive logger.
  • KLogger - An easy-to-use PSR-3 compliant logging class.

E-commerce

Libraries and applications for taking payments and building online e-commerce stores.
  • OmniPay - A framework agnostic multi-gateway payment processing library.
  • Payum - A payment abstraction library.
  • Sylius - An open source e-commerce solution.
  • Thelia - Another open source e-commerce solution.
  • Money - A PHP implementation of Fowler's money pattern.
  • Sebastian Money - Another library for working with monetary values.
  • Swap - An exchange rates library.

PDF

Libraries and software for working with PDF files.
  • Snappy - A PDF and image generation library.
  • WKHTMLToPDF - A tool to convert HTML to PDF.

Database

Libraries for interacting with databases using object-relational mapping (ORM) or datamapping techniques.
  • Doctrine - A comprehensive DBAL and ORM.
  • Doctrine Extensions - A collection of Doctrine behavioural extensions.
  • Propel - A fast ORM, migration library and query builder.
  • Eloquent - The Laravel 4 ORM.
  • Baum - A nested set implementation for Eloquent.
  • Spot2 - A MySQL datamapper ORM.
  • RedBean - A lightweight, configuration-less ORM.
  • Pomm - An Object Model Manager for PostgreSQL.
  • ProxyManager - A set of utilities to generate proxy objects for data mappers.

Migrations

Libraries to help manage database schemas and migrations.

NoSQL

Libraries for working with "NoSQL" backends.
  • MongoQB - A MongoDB query builder library.
  • Monga - A MongoDB abstraction library.
  • Predis - A feature complete Redis library.

Queue

Libraries for working with event and task queues.
  • Pheanstalk - A Beanstalkd client library.
  • PHP AMQP - A pure PHP AMQP library.
  • Thumper - A RabbitMQ pattern library.
  • Bernard - A multibackend abstraction library.

Search

Libraries and software for indexing and performing search queries on data.

Command Line

Libraries for building command line utilities.
  • Boris - A tiny PHP REPL.
  • PsySH - Another PHP REPL.
  • Pecan - An event-driven, non-blocking shell.
  • GetOpt - A command line opt parser.
  • OptParse - Another command line opt parser.
  • Commando - Another simple command line opt parser.
  • GetOptionKit - Another command line opt parser.
  • Cron Expression - A library to calculate cron run dates.
  • ShellWrap - A simple command line wrapper library.
  • Hoa Console - Another command line library.
  • Shunt - A library for running commands in parallel on multiple remote machines.
  • Cilex - A micro framework for building command line tools.

Authentication

Libraries for implementing authentications schemes.
  • Sentry - A framework agnostic authentication & authorisation library.
  • Sentry Social - A library for social network authentication.
  • Opauth - A multi-provider authentication framework.
  • OAuth2 - An OAuth2 authentication server, resource server and client library.
  • OAuth2 Server - Another OAuth2 server implementation.
  • PHP oAuthLib - Another OAuth library.
  • TwitterOAuth - A Twitter OAuth library.
  • TwitterSDK - A fully tested Twitter SDK.
  • Hawk - A Hawk HTTP authentication library.
  • HybridAuth - An open source social sign on library.

Markup

Libraries for working with markup.

Strings

Libraries for parsing and manipulating strings.
  • ANSI to HTML5 - An ANSI to HTML5 converter library.
  • Patchwork UTF-8 - A portable library for working with UTF-8 strings.
  • Hoa String - Another UTF-8 string library.
  • Stringy - A string manipulation library with multibyte support.
  • Color Jizz - A library for manipulating and converting colours.
  • UUID - A library for generating UUIDs.
  • Slugify - A library to convert strings to slugs.
  • Urlify - A PHP port of Django's URLify.js.
  • Text - A text manipulation library.
  • SQL Formatter - A library for formatting SQL statements.
  • UA Parser - A library for parsing user agent strings.

Numbers

Libraries for working with numbers.
  • Numbers PHP - A library for working with numbers.
  • Math - A library for working with large numbers.
  • ByteUnits - A library to parse, format and convert byte units in binary and metric systems.
  • PHP Units of Measure - A library for converting between units of measure.
  • PHP Conversion - Another library for converting between units of measure.
  • LibPhoneNumber for PHP - A PHP implementation of Google's phone number handling library.

Filtering and Validation

Libraries for filtering and validating data.
  • Filterus - A simple PHP filtering library.
  • Respect Validate - A simple validation library.
  • Valitron - Another validation library.
  • Upload - A library for handling file uploads and validation.
  • DMS Filter - An annotation filtering library.
  • MetaYaml - A schema validation library that supports YAML, JSON and XML.
  • ISO-codes - A library for validating various ISO and ZIP codes (IBAN, SWIFT/BIC, BBAN, VAT, SSN, UKNIN).

REST and API

Libraries and web tools for developing REST-ful APIs.
  • Apigility - An API builder built with Zend Framework 2.
  • Hateoas - A HATEOAS REST web service library.
  • HAL - A Hypertext Application Language (HAL) builder library.
  • Negotiation - A content negotiation library.
  • Drest - A library for exposing Doctrine entities as REST resource endpoints.
  • Restler - A lightweight framework to expose PHP methods as RESTful web API.

Caching

Libraries for caching data.

Data Structure and Storage

Libraries that implement data structure or storage techniques.
  • Ardent - A library of data structures.
  • PHP Collections - A simple collections library.
  • Serializer - A library for serialising and de-serialising data.
  • PHP Object Storage - A library for object storage.
  • Fractal - A library for converting complex data structures to JSON output.
  • Totem - A library to manage and create data changesets.
  • PINQ - A real Linq library for PHP.
  • JsonMapper - A library that maps nested JSON structures onto PHP classes.

Notifications

Libraries for working with notification software.
  • Nod - A notification library (e.g., Growl).
  • Notificato - A library for handling push notifications.
  • Notification Pusher - A standalone library for device push notifications.
  • Notificator - A lightweight notification library.

Deployment

Libraries for project deployment.
  • Pomander - A deployment tool for PHP applications.
  • Rocketeer - A fast and easy deployer for the PHP world.
  • Envoy - A tool to run SSH tasks with PHP.
  • Plum - A deployer library.

Internationalisation and Localisation

Libraries for Internationalization (I18n) and Localization (L10n).

Third Party APIs

Libraries for accessing third party APIs.

Extensions

Libraries to help build PHP extensions.
  • Zephir - A compiled language between PHP and C++ for developing PHP extensions.
  • PHP CPP - A C++ library for developing PHP extensions.

Miscellaneous

Useful libraries or tools that don't fit in the categories above.
  • Spork - A process forking library.
  • JSON Lint - A JSON lint utility.
  • JSONPCallbackValidator - A library for validating JSONP callbacks.
  • Pagerfanta - A pagination library.
  • Ruler - A simple stateless production rules engine.
  • LiteCQRS - A CQRS (Command Query Responsibility Separation) library.
  • Sslurp - A library that makes dealing with SSL suck less.
  • PHP Option An option type library.
  • Metrics - A simple metrics API library.
  • Sabre VObject - A library for parsing VCard and iCalendar objects.
  • Annotations - An annotations library (part of Doctrine).
  • Whoops - A pretty error handling library.
  • Finite - A simple PHP finite state machine.
  • LadyBug - A dumper library.
  • Procrastinator - A library for running time consuming tasks.
  • Compose - A function composition library.
  • SuperClosure - A library that allows Closures to be serialized.
  • Jumper - A remote service executor library.
  • Underscore - A PHP port of the Underscore JS library.
  • PHP PassBook - A PHP library for iOS PassBook.
  • PHP Expression - A PHP expression language.
  • RMT - A library for versioning and releasing software.
  • Wise - A configuration manager.
  • Opengraph - An opengraph library.
  • Essence - A library for extracting web media.
  • Embera - An Oembed consumer library.
  • Graphviz - A Graphviz library.
  • Monad PHP - A simple Monad library.
  • Flux - A regular expression building library.
  • Patchwork - A library for redefining userland functions.
  • Galapagos - Evolutionary language transformation.
  • Design Patterns PHP - A repository of software patterns implemented in PHP.
  • PHPCR - A PHP port of the Java Content Repository (JCR).
  • Functional PHP - A functional programming library.
  • ClassPreloader - A library for optimising autoloading.
  • Lib Country - A library for country and subdivision data.
  • Lib Accessor - A library for simplifying accessors.
  • PHPStack - A TCP/IP stack proof of concept written in PHP.
  • Nmap - A PHP wrapper around Nmap.
  • Code Mover - A library for moving code.
  • Iter - A library that provides iteration primitives using generators.
  • Lambda PHP - A Lambda calculus interpreter in PHP.
  • Country List - A list of all countries with names and ISO 3166-1 codes.
  • PHP-GPIO - A library for playing with the Raspberry PI's GPIO pins.
  • print_o - An object graph visualizer.
  • Alias - A class aliasing library.

Software

Software for creating a development environment.

PHP Installation

Tools to help install and manage PHP on your computer.
  • HomeBrew - A package manager for OSX.
  • HomeBrew PHP - A PHP tap for HomeBrew.
  • PHP OSX - A PHP installer for OSX.
  • PHP Brew - A PHP version manager and installer.
  • PHP Env - Another PHP version manager.
  • PHP Switch - Another version manager.
  • PHP Build - Another PHP version installer.
  • VirtPHP - A tool for creating and managing isolated PHP environments.

Development Environment

Software and tools for creating a sandboxed development environment.
  • Vagrant - A portable development environment utility.
  • Ansible - A radically simple orchestration framework.
  • Puppet - A server automation framework and application.
  • PuPHPet - A web tool for building PHP development virtual machines.
  • Protobox - Another web tool for building PHP development virtual machines.
  • Phansible - A web tool for building PHP development virtual machines with Ansible.

Virtual Machines

Alternative PHP virtual machines.
  • HipHop PHP - A Virtual Machine, Runtime and JIT for PHP by Facebook.
  • HippyVM - Another PHP virtual machine.
  • Hack - A programming language for HHVM that interoperates seamlessly with PHP.

Integrated Development Environment

Integrated Development Environments with support for PHP.

Web Applications

Web-based applications and tools.
  • 3V4L - An online PHP shell.
  • DBV - A database version control application.
  • PHP Queue - An application for managing queueing backends.
  • Composer as a Service - A tool for downloading Composer packages as a zip file.
  • MailCatcher - A web tool for capturing and viewing emails.

Resources

Various resources, such as books, websites and articles, for improving your PHP development skills and knowledge.

PHP Websites

Useful PHP-related websites.

Other Websites

Useful websites related to web development.

PHP Books

Fantastic PHP-related books.

Other Books

Books related to general computing and web development.

PHP Videos

Fantastic PHP-related videos.

PHP Reading

PHP-releated reading materials.

PHP Internals Reading

Reading materials related to the PHP internals or performance.


Fonte: https://github.com/ziadoz/awesome-php

30/10/2014

Níveis de Usuário no WordPress

O WordPress usa o conceito de Papéis (Roles, em inglês) que permite atribuir maior ou menor capacidade dentro do seu blog. Essa capacidade diz respeito a funções que cada papel possui. Até a versão 2.0 do WordPress, os usuários eram definidos por níveis, que ia de 0 a 10. Por isso é muito comum os papéis serem chamados de níveis de usuário (inclusive eu chamo assim), mas é importante você conhecer essas diferenças, pois alguns plugins utilizam ainda o conceito antigo, ou seja, em vez dos papéis, utilizam os níveis de 0 a 10.

O WordPress já vem com alguns papéis pré-definidos. São eles:
  • Assinante (Subscriber), equivalente ao nível 0 (zero);
  • Colaborador (Contributor), equivalente ao nível 1;
  • Autor (Author), equivale dos níveis 2 ao 4;
  • Editor (Editor), equivale dos níveis 5 ao 7;
  • Administrador (Administrator), equivale dos níveis 8 a 10;
Cada papel tem suas funções cumulativas, ou seja, nos níveis mais altos são adicionados todas as funções dos níveis anteriores. Veja abaixo uma tabela que mostra o que cada papel é capaz de realizar:
Níveis dos Usuários WordPress
Cada função mostrada é auto-explicativa e por isso irei apenas mostrar em que partedo Painel de Administração cada uma é acionada:
Instalar temas / Atualizar temas
  • Aparência > Adicionar novos temas;
Trocar temas
  • Aparência > Temas, sendo na parte de temas disponíveis;
  • Aparência > Widgets;
Editar temas
  • Aparência > Editor;
  • Aparência > Personalizar cabeçalho, quando disponível para o tema aplicado;
Instalar plugins
  • Plugins > Adicionar novo;
Ativar plugins
  • Plugins > Instalados, botão ‘Ativar’;
Editar plugins
  • Plugins > Editor;
Excluir plugins
  • Plugins > Instalados, botão ‘Excluir’;
Criar usuários
  • Usuários > Adicionar novo;
Editar usuários
  • Usuários > Autores e Usuários;
Excluir usuários
  • Usuários > Autores e Usuários, botão ‘Excluir’;
Editar arquivos
  • Não mais usado nas versões recentes;
Mudar configurações
  • Configurações > Geral;
  • Configurações > Escrita;
  • Configurações > Leitura;
  • Configurações > Discussão;
  • Configurações > Mídia;
  • Configurações > Privacidade;
  • Configurações > Links Permanentes;
  • Configurações > Diversas;
Importação
  • Ferramentas > Importar;
  • Ferramentas > Exportar;
Qualquer Upload
  • Permite que qualquer tipo de arquivo seja carregado;
Editar Painel
  • Permite modificar configurações do Painel de Administração do WordPress;
Moderar Comentários
  • Permite acesso à parte de moderação dos comentários. Para isso, também é necessário acesso à edição do post do comentário;
Gerenciar Categorias
  • Posts > Categorias;
  • Links > Categorias de Links;
Gerenciar Links
  • Links > Editar;
  • Links > Adicionar novo;
HTML sem restrições
  • Permite usar tags HTML e códigos JavaScript nas Páginas, Posts e Comentários;
Editar Post publicado
  • Posts > Editar, permitindo editar um post já publicado pelo usuário;
Editar Posts dos outros
  • Posts > Editar, permitindo editar posts de qualquer usuário;
Editar Páginas
  • Páginas > Editar;
Editar Páginas dos outros
  • Páginas > Editar, permitindo editar páginas de qualquer usuário;
Editar páginas publicadas
  • Páginas > Editar, permitindo editar páginas já publicadas pelo usuário;
Publicar páginas
  • Páginas > Adicionar nova, permitindo aparecer o botão ‘Publicar’;
Excluir páginas
  • Páginas > Editar, permitindo excluir páginas criadas pelo usuário;
Excluir páginas dos outros
  • Páginas > Editar, permitindo excluir páginas de qualquer usuário;
Excluir páginas publicadas
  • Páginas > Editar, permitindo excluir páginas já publicadas pelo usuário;
Excluir Posts dos outros
  • Post > Editar, permitindo apagar posts de qualquer usuário;
Excluir Posts privados
  • Post > Editar, permitindo apagar posts com status privado de qualquer usuário;
Editar Posts privados
  • Post > Editar, permitindo editar posts com status privado de qualquer usuário;
Ler Posts privados
  • Post > Editar, permitindo visualizar posts com status privado de qualquer usuário;
Excluir páginas privadas
  • Páginas > Editar, permitindo excluir páginas com status privado de qualquer usuário;
Editar páginas privadas
  • Páginas > Editar, permitindo editar páginas com status privado de qualquer usuário;
Ler páginas privadas
  • Páginas > Editar, permitindo visualizar páginas com status privado de qualquer usuário;
Upload de arquivos
  • Mídia > Adicionar nova
  • Também permite o upload na criação de posts e páginas;
Publicar Posts
  • Posts > Adicionar novo, permitindo a visualização do botão ‘Publicar’;
Excluir Posts publicados
  • Posts > Editar, permitindo excluir posts já publicados pelo usuário;
Editar Posts
  • Páginas > Editar, permitindo edição do posts do usuário;
Excluir Posts
  • Páginas > Editar, permitindo excluir os posts do usuário;
Ler
  • Perfil > Seu Perfil, permitindo apenas mudança do seu perfil de usuário;
  • Apenas faz a leitura do Painel e do conteúdo do WordPress na página principal;
Essas informações foram retiradas do site oficial de documentação do WordPress, mas realizando alguns testes posso acrescentar algumas coisas:
  • Colaborador e Autor também visualizam os comentários no Painel, porém sem opções de moderação;
  • As funções de Editar Post publicado, Ler Posts privados, Editar Posts privados e Excluir Posts privados também são atribuídos aos papéis de Colaborador e Autor desde que os posts sejam do próprio usuário que os criou;
Existe um grande problema com esses papéis pré-definidos do WordPress e como exemplo apenas vou citar o papel Colaborador. Ele consegue criar e editar seus posts, exceto com status privado, porém não consegue fazer upload de mídias. Esse problema é resolvido com alguns plugins disponíveis. Mas isso já é assunto para outro artigo.
Finalizo aqui dizendo que se possível leia mais de uma vez esse artigo, pois é realmente importante você conhecer a limitação de cada papel do usuário no WordPress. E caso tenha qualquer dúvida, sugestão, crítica ou elogio faça-o nos comentários, pois eu quero te conhecer mais.
Referencia de documentação: 
  • http://codex.wordpress.org/Roles_and_Capabilities

07/10/2014

Limpando versões antigas do Kernel do Linux Ubuntu

Simplificando tudo no Ubuntu

Mostrei anteriormente que no Red Hat a remoção de todas as versões do kernel, com exceção da atual, pode ser feita com o uso de apenas um comando.
No Ubuntu, você não tem o mesmo recurso, Mas esta linha vai resolver o problema. O código do Mark McBride, a seguir, remove todas as versões do kernel, exceto a atual (copie e cole):
--------------------------------------------------------------------------------------------------------------------
dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge
--------------------------------------------------------------------------------------------------------------------
Assim que você teclar Enter o comando entra em ação — você terá que confirmar e dar a sua senha, claro.
No meu caso, o apt-get avisou que vai liberar quase meio giga no meu HD, como você pode ver abaixo:
--------------------------------------------------------------------------------------------------------------------
  Lendo listas de pacotes... Pronto
Construindo árvore de dependências      
Lendo informação de estado... Pronto
Os pacotes a seguir serão REMOVIDOS:
  linux-headers-3.11.0-15* linux-headers-3.11.0-15-generic* linux-headers-3.11.0-17*
  linux-headers-3.11.0-17-generic* linux-image-3.11.0-15-generic* linux-image-3.11.0-17-generic*
  linux-image-3.8.0-35-generic* linux-image-extra-3.11.0-15-generic* linux-image-extra-3.11.0-17-generic*
  linux-image-extra-3.8.0-35-generic*
0 pacotes atualizados, 0 pacotes novos instalados, 10 a serem removidos e 26 não atualizados.
Depois desta operação, 547 MB de espaço em disco serão liberados.
Você quer continuar [S/n]? Abortar.
---------------------------------------------------------------------------------------------------------------------
Enfim, embora você não precise fazer esta limpeza sempre, é interessante fazê-la a cada 6 meses ou 1 ano.

09/09/2014

Manipulando XML com Javascript


Função para manipulação de arquivos locais XML:

---------------------------------------------------------------------------------------------
function loadXMLDoc(filename)
{
  if (window.XMLHttpRequest)  {
     xhttp=new XMLHttpRequest();
  }
else // code for IE5 and IE6
  {
     xhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xhttp.open("GET",filename,false);
xhttp.send();
   return xhttp.responseXML;


//criando o objeto que contem a referencia de leitura do arquivo XML
xmlDoc=loadXMLDoc("../../../plugins/system/onestepcheckout/views/3cols/books.xml");

//SETANDO AS INFORMACOES A PARTIR DA TAG XML DE NOME "arquivo"
//x=xmlDoc.getElementsByTagName("arquivo")[0].childNodes[1];
xml=xmlDoc.getElementsByTagName("arquivo");

//varrendo o XML e mostrando os nomes dos livros cadastrados
for(y=0; y< xml.length; y++ ){
console.log(xmlDoc.getElementsByTagName("arquivo")[y].innerHTML);
}
========================================================

Segue também o XML usado neste exemplo:

----------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<pastas>
<arquivo>
Livro de desenvolvimento Java
</arquivo>
</pastas>
<pastas>
<arquivo>
Livro de desenvolvimento PHP 5.5
</arquivo>
</pastas>
<pastas>
<arquivo>
Livro de desenvolvimento Android
</arquivo>
</pastas>
<pastas>
<arquivo>
Livro de desenvolvimento Javascript
</arquivo>
</pastas>
</bookstore>
----------------------------------------------------------------------------------------------

O resultado final seria esse no console: