Users can extend our PHP application with plugins, and we would like to host all these plugins, but more than just hosting files we want to allow users to version their files with git. Finally too, we'd like for other people using these plugins to be able to review/rate the plugins.
Is there any such script/software out there that allows you to do this? Wordpress has some type of BBPress front-end that interacts with SVN for their wordpress.com/extend plugin website. In a nutshell its a git hosting platform combined with a front-end based on PHP... too much to ask for?
Okay, decided to go with a PHP based Forge app called indefero: http://www.indefero.net/
Related
I need help with integration of Moodle with Shopify website. If the integration is possible, I'd also like to know if there will be a need to get an external server like AWS for the database/storage of the course materials and users' records or everything can be done within Shopify.
Thank you.
Here are few things you can consider:
There are free and paid services for integrating Moodle with Shopify.
I've tried Zapier free plan, you can create free workflows/services.
You've to sign in to your Moodle website (if hosted Moodle personal - CPanel) to access Zapier workflows.
You can develop a local plugin and install it by visiting Site Administration -> Plugins -> Install plugins and drag-n-drop the local plugin (zip file) into the filepicker-container. You need to have admin access of your Moodle website.
There's a plugin called Moodle plugin skeleton generator to set up basic code structure. You've to install this tool by navigating same way.
Try out Moodle themes or customize default themes.
You can also check with Edwiser WordPress theme for Moodle and it's free to use and integrate.
Hope that'll help, thanks :)
You can also refer Shopify SSO application for Integration with different apps like Moodle, AWS, and more.
I've searched a lot about this problem, but I didn't found a "perfect" solution. I am using Wordpress with GIT and I'm currently using this gitignore:
https://gist.github.com/salcode/9940509
My question is on the plugins management:
It's very useful to have plugins tracked across environments and this gitignore tracks them unless you ignore specific plugins (like hello.php ecc..) which is fine. The problem is when the plugins have been updated. The files will sync because they are tracked in the GIT repo, which is ok. But what if the updated version of the plugin needs a DB update/upgrade, too? If so, you must always deactivate and activate again all the updated and pulled plugins to ensure eventual tables of the plugins are synced, too.
Do you have a solution for this problem or it is better to not track the plugins at all and install them manually on each environment which is a little bit frustrating to me?
Thanks
You can inject Plugin dependencies with TGM Plugin Activation
This library allow you to make an list of plugins that need to be installed in your theme/plugin. Is very easy to use and give you an better control (force activation/desactivation, private/git plugins, etc).
This way, you don't need to track the plugins folder.
Much better, you can track only your project this way (the plugin or theme only).
NOTE: Even if you use this tool, always integrate with external plugins safely (detect if it is activated, if function exists, using hooks and filters, etc). This way your project cannot crash WordPress.
I want to start writing some blog and I know that i will past code there so i am looking for some platform with this already built in . And that i will not need to use third party script for syntax highlighting.
As I understood Blogger and Word press dont have that built in and they use syntax highlighter .
The problem is that i am really not understand in web programming and I am not sure to install all those scripts .
Thanks .
WordPress is designed so that all you ever have to do is write - i.e. you don't have to be a web developer to use the platform while you're blogging. You add functionality through plug-ins, which are optional modules you download, install, activate, and configure within the WordPress GUI. No coding skills required.
Getting WordPress
You can get a free WordPress blog at WordPress.com. You might also be able to set one up on your own domain through your web host with a one-click-installation tool (this depends on your host). Finally, you can usually find a developer who will install WordPress on your hosted server for free (Here's an example of an Arizona developer who offers free WordPress installation.)
To install a syntax highlighter, you'll need to be running WordPress on your own server. The free WordPress.com setup doesn't allow you to install additional plug-ins. But setting up WordPress on your own server is fast, relatively easy, and as I mentioned before, very well supported by the community.
Installing a Plug-in
You can search for plug-ins and install them directly within the WordPress dashboard. Just go to your dashboard, click Plugins then click on the big Add New button at the top of the page. From this screen, you can browse available plug-ins by tag or search for a specific feature.
Once you've found a plug-in you like, click Install Now and follow the on-screen instructions to install and activate the new system on your site. Then you have new functionality set up, and you didn't have to touch any code!
Syntax Highlighting
I use a syntax highlighter on my own site for displaying PHP and JavaScript code. It's called Code Colorer, and it supports a wide variety of languages and structures - you can even use a custom theme to color/style your code snippets if you want. Here's an example on my site using PHP. Here's an example using JavaScript.
Other Resources
Here are some other places you can look for more information regarding getting a WordPress blog set up on your own system:
WordPress Web Hosting
WordPress Hosting with GoDaddy
How to Setup a Self-hosted WordPress Blog For Free
Jumping Duck Media Web Hosting (Full Disclosure: This is my company!)
I've been wondering about making a blog hosting site like blogspot as a bit of a hobby. I figure Wordpress would be ideal to use but I'm not 100% on a lot of things related to this. Can I simply create mysql databases and wordpress installs with php functions and keep it secure from possible hacks? Or would the server as a whole need its own software to handle this securely?
Wordpress Mu
is a better choice for such site.
Most hosting packages come with one click install of Wordpress. I used to have a Netfirms plan that I got for $10! Just click and install as many Wordpress sites you need.
Security with Wordpress is very strong. They have been around and the software is mature. You wouldn't be exposing yourself to much danger by templating the site.
You can try Wordpress using the WAMP server.
We created an open source script for this purpose, you can find it here http://buckhill.github.io/linux-package-installer-for-wordpress
We wrote an article on how to use it here: https://www.buckhill.co.uk/blog/how-to-automatically-install-wordpress-plus-plugins/6
If you want to contribute to the project, please go ahead :)
My company is building a platform on top of a heavily extended Drupal core. I have multiple customers who will be using separate instances of this system and will want to customize both the theme and the functionality.
I'm trying to design a system to allow them to add themes and modules, some of which might interact with some of my modules, without giving them access to the actual code. (This isn't open source)
The way that Facebook and Ning do this is to have the developer host their own custom code, and have a callback to it. This won't really work for me, as these sites need the ability to be fully customized, so callbacks for specific integration points don't really work.
One option is to set up a sandbox environment where the custom developers only have access to a couple specific directories to build their themes and custom modules. We could then integrate with git to commit these when they're ready and deploy them with the rest of our code into production. The problem with this setup is that developers have to develop remotely and have to use our source control system.
A more typical setup is to allow the developers to download something to build their custom code against. They can develop locally and use whatever source control practices they already have. As we don't want specific point integrations, I don't think this can be a library that runs against a separate server. The alternative is to download our full core Drupal system and develop locally against that, uploading the custom code when it's ready, but then they would have access to all our code and IP.
Thus the predicament, as I don't think there is any way to effectively obfuscate PHP.
Anyone have any brilliant ideas here?
It sounds like your system is a derivative work of Drupal and thus covered by the GPL. If you distribute the code to your clients they have all of the rights provided by the GPL, Including modifying and redistributing it.
Be aware that distributing obfuscated GPLed code is not allowed. To quote the GPLv2 "The source code for a work means the preferred form of the work for making modifications to it."
Obfuscated code does not comply with this clause of the GPL.
That said, if you really want to provide your clients a way to customize your system you could provide your clients access to the existing Drupal module and theme system but only on your sandbox.
Of course since the modules and themes are PHP and you "don't want specific point integrations" it seems they would have the sort of freedom that would allow them to write a module that reads all of the source code for the rest of your system and then tar it up and send it to themselves.
I think you've painted yourself into a corner by depending on GPL. Keeping your IP private while allowing your clients to extend/customize the system in general ways doesn't really work.
I hope you're aware that Drupal is GPL licensed, be sure to read their licensing FAQ before you start obfuscating.
Why not just create an FTP user for them which can only access /sites/theirsite? What am I missing?