Please refer to the sections below for more detailed information. The instructions assume the work is performed from a command line inside the repository.
- Download and install Xcode. The .xcode-version file lists the version CI uses.
- Clone this repository in the folder of your preference.
- Open
WordPress.xcworkspacein Xcode and build theJetpackorWordPressscheme. The first build downloads the Gutenberg frameworks the app needs (about 60 MB).
- Create a WordPress.com account at https://wordpress.com/start/user (if you don't already have one).
- Create an application at https://developer.wordpress.com/apps/.
- Set Website URL to any valid host, Redirect URLs to
https://localhost, and Type toNative. - Click "Create" then "Update".
- Copy the
Client IDandClient Secretfrom the OAuth Information.
- Return to the command line and run
make credentialsto set up your own WordPress.com API credentials, so you can log in to WordPress.com in the app. To skip the prompts, runScripts/setup-credentials.sh --client-id <id> --client-secret <secret>instead. - Once completed, run
open WordPress.xcworkspaceto open the project in Xcode.
If all went well you can now compile to your iOS device or simulator, and log into the WordPress app.
Note: You can only log in with the WordPress.com account that you used to create the WordPress application.
The steps above will help you configure the WordPress app to run and compile. But you may sometimes need to update or re-run specific parts of the initial setup (like updating the dependencies.) To see how to do that, please check out the steps below.
We use a few Ruby tools for release and CI, such as fastlane and Danger. Run bundle install to install or update them. Building and testing the app doesn't need them. Use the Ruby version in .ruby-version; a tool like rbenv picks it up automatically (rbenv install).
Open WordPress.xcworkspace in Xcode. The first build downloads the Gutenberg frameworks the app needs.
In order to login to WordPress.com with the app you need to create an account over at the WordPress.com Developer Portal.
After you create an account you can create an application on the WordPress.com applications manager.
When creating your application, you should select "Native client" for the application type.
The "Website URL", "Redirect URLs", and "Javascript Origins" fields are required but not used for the mobile apps. Just use https://localhost.
Your new application will have an associated client ID and a client secret key. These are used to authenticate the API calls made by your application.
Next, run make credentials. You will be prompted for your Client ID and your Client Secret. Once added, you will be able to log into the WordPress app.
Remember the only WordPress.com account you will be able to login in with is the one used to create your client ID and client secret.
Read more about OAuth2 and the WordPress.com REST endpoint.
Read our Contributing Guide to learn about reporting issues, contributing code, and more ways to contribute.
If you happen to find a security vulnerability, we would appreciate you letting us know at https://hackerone.com/automattic and allowing us to respond before disclosing the issue publicly.
If you have questions about getting setup or just want to say hi, join the WordPress Slack and drop a message on the #mobile channel.
- The docs contain information about our development practices.
- WordPress Mobile Blog
- WordPress Mobile Handbook
WordPress for iOS is an Open Source project covered by the GNU General Public License version 2.